Inter-Language Unification
Inter-Language Unification(ILU)は、多言語対応インタフェースシステムである。ILUが提供するオブジェクトインタフェースは、プログラミング言語、アドレス空間、オペレーティングシステムによる実装上の差異を隠蔽する。ILU は、言語に依存しないインタフェースを持った多言語オブジェクト指向ライブラリ(クラスライブラリ)を構築するのに使われる。また、分散システムの実装にも使われる。分散型でないプログラムのモジュール間インタフェースの定義/文書化にも使われる。ILUインタフェースの記述には、OMGの CORBA インタフェース記述言語 (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 C、Python、Java、Common Lisp といったプログラミング言語をサポートしている。寄付の形でサポートされている言語として、Modula-3、Guile Scheme、Perl5 がある。各種UNIX(SunOS、Solaris、HP-UX、AIX、OSF、IRIX、FreeBSD、Linux、Lynx、SCO Unixなど)上で実装されており、Microsoft Windows(3.1、95、NT)でも実装されている。スレッド型操作(POSIX、Solaris、Franz ACL、PPCR、Modula-3)とイベントループ型操作(Xt、Tk、XView)がサポートされている。
実装目標の一つは、既存のオープン標準間で互換性を最大化することであった。結果として、ILUは OMG CORBA IDL インタフェース記述言語の利用をサポートすることになり、CORBA ORB システムの一種とみなすこともできる(ただし、CORBA仕様と比較すると不足部分と余計な部分がある)。ILUには、ONC RPC の自己完結型実装も含まれており、既存のRPCサービスをILUオブジェクトとして記述可能である。ILUには、HTTPの自己完結型実装も含まれており、オブジェクト指向型ウェブブラウザとウェブサーバの実装に使うこともできる。通信セキュリティは、GSSベースのコンテキスト・ネゴシエーションと暗号化によって提供される。
関連項目
[編集]- Webコンポーネント
- Enterprise JavaBeans (EJB)
- 分散オブジェクトミドルウェア (DOM)
- Component Object Model (COM)
- Common Object Request Broker Architecture (CORBA)
外部リンク
[編集]- Inter-Language Unification ILUのソースがある。