ISO/IEC TR 25438:2006
情報技術、共通言語構成要素 (CLI)、技術レポート: 一般遺伝学

規格番号
ISO/IEC TR 25438:2006
制定年
2006
出版団体
International Organization for Standardization (ISO)
最新版
ISO/IEC TR 25438:2006
範囲
CLI 標準ライブラリ (ISO/IEC 23271) は、複数の言語で使用できる共通タイプのコレクションを提供します。 CLI へのジェネリックの追加により、標準ライブラリが拡張され、多くの一般的なジェネリック タイプ、特にコレクションが含まれるようになりました。 ただし、現時点では、これらのライブラリには、さまざまな言語で見られる多くの単純なジェネリック型は含まれていません。 これらの共通型を使用する言語は、CLI ライブラリに従うのではなく、それらを実装する必要があるため、言語の相互運用性が低下します。 このテクニカル レポートでは、これらの一般的なタイプをいくつか提供することで、この問題に対処しています。 ジェネリック タプル (製品タイプ) は、C++ (テンプレート ペア)、Ada、Haskell、および標準 ML (SML) などの多くの言語で標準です。 ただし、標準ライブラリでサポートされる事前定義されたタプル サイズの数は言語によって異なります。 たとえば、C++ では 1 つ (ペア) しか提供されませんが、Haskell では 8 つ (サイズ 2 ~ 9) が提供され、SML では任意のサイズのタプルが許可されます。 この技術レポートは 9 つ (サイズ 2 ~ 10) を提供します。 ジェネリック プログラミングは、ジェネリック関数 (メソッド) がジェネリック型を持つ関数 (デリゲート) 型の引数を受け取る「高次」プログラミングを奨励します。 例には、Ada の with 制約と汎用制約、および Haskell と SML の関数引数が含まれます。 CLI では、関数値はデリゲートの形式で提供されるため、この提案では、関数 (値を返す) とプロシージャ (値を返さない) の標準の汎用デリゲート型を定義します。 多くの言語で使用されるもう 2 つのタイプはオプションのタイプで、これには他のタイプの値、またはそのような値が存在しないことを示す値が含まれます。 もう 1 つのタイプは、2 つの可能なタイプのうちの 1 つの値と、どちらが存在するかを示す値を保持します。 この提案はこれらの両方を提供します。 注 オプションの型は、System.Nullable 型と似ていますが、異なります。 最後に、既存のジェネリック言語では、ジェネリック型の特定の用途に特定のジェネリック パラメータが必要ない場合にフィラー型を使用する必要があることがわかっています。 多くの場合、標準の 1 値型がこの目的のために提供されており、Unit または Void と呼ばれます。 このテクニカルレポートにはそのようなタイプも含まれています。

ISO/IEC TR 25438:2006 発売履歴

  • 2006 ISO/IEC TR 25438:2006 情報技術、共通言語構成要素 (CLI)、技術レポート: 一般遺伝学
情報技術、共通言語構成要素 (CLI)、技術レポート: 一般遺伝学



© 著作権 2024