Inter-Language UnificationILU)は、多言語対応インタフェースシステムである。ILUが提供するオブジェクトインタフェースは、プログラミング言語アドレス空間オペレーティングシステムによる実装上の差異を隠蔽する。ILU は、言語に依存しないインタフェースを持った多言語オブジェクト指向ライブラリ(クラスライブラリ)を構築するのに使われる。また、分散システムの実装にも使われる。分散型でないプログラムのモジュール間インタフェースの定義/文書化にも使われる。ILUインタフェースの記述には、OMGCORBA インタフェース記述言語 (OMG IDL) か、ILU の Interface Specification Language (ISL) が使われる。

歴史 編集

ILU は、1991年から2000年にかけて、ゼロックスパロアルト研究所オープンソースプロジェクトとして開発された。最終リリースバージョンは 2.0beta1 である。

1997年から2000にかけて、ILUは World Wide Web Consortium の HTTP-NG activity として行われた「次世代」HTTPに関する実験的研究の基盤として使われた。その成果として、効率的な実験遠隔手続き呼出し (RPC) プロトコル"w3ng"と、1つのTCPコネクションに複数の双方向チャンネルを多重化する"w3mux"が開発された。HTTP-NGの成果は、2000年の World Wide Web Conference で発表された。

機能 編集

最終リリースでは、C++(Corba2マッピング)、ANSI CPythonJavaCommon Lisp といったプログラミング言語をサポートしている。寄付の形でサポートされている言語として、Modula-3Guile SchemePerl5 がある。各種UNIX(SunOSSolarisHP-UXAIXOSFIRIXFreeBSDLinuxLynxSCO Unixなど)上で実装されており、Microsoft Windows(3.1、95、NT)でも実装されている。スレッド型操作(POSIX、Solaris、Franz ACL、PPCR、Modula-3)とイベントループ型操作(XtTkXView)がサポートされている。

実装目標の一つは、既存のオープン標準間で互換性を最大化することであった。結果として、ILUは OMG CORBA IDL インタフェース記述言語の利用をサポートすることになり、CORBA ORB システムの一種とみなすこともできる(ただし、CORBA仕様と比較すると不足部分と余計な部分がある)。ILUには、ONC RPC の自己完結型実装も含まれており、既存のRPCサービスをILUオブジェクトとして記述可能である。ILUには、HTTPの自己完結型実装も含まれており、オブジェクト指向型ウェブブラウザとウェブサーバの実装に使うこともできる。通信セキュリティは、GSSベースのコンテキスト・ネゴシエーションと暗号化によって提供される。

関連項目 編集

外部リンク 編集