本論文は、『モーバイル計算』(mobile computation)と呼ばれている分散計算の形態について、(1)計算モデル、(2)プログラミング言語、(3)言語の実装の三つのの観点から総合的に研究を行った結果である。 本研究の主たる部分は三つの章から成り立っている。 第2章では、モーバイル言語システムを分析するために、-現存するシステムの様々な特徴を記述することのできる共通の計算系が与えられている。この計算系は、モーバイル計算の記述とモーバイル言語の設計を目的として作られてたものである。実際に、現存するモーバイル言語のいくつかの特性がこの計算系の中で記述されている。 さらに、この計算系に関して、プログラム実行の移動性(mobility)を制御とデータの側面に分けた考察が成されている。制御の移動性に関しては、マイグレーションのための演算子と部分継続のための演算子との間の強い類似性が指摘されている。データの移動性に関しては、データ移動プロトコル(data movement protocol)と呼ばれる機構が提案されている。この機構によってデータのマイグレーションの透明性を柔軟に制御することができる。 第3章では、第2章の分析に基づいてモーバイル計算のための柔軟なプログラミング言語が設計されている。この言語はC++やSmallTalkやJavaのようなオブジェクト指向言語の拡張となっている。原型となるプログラミング言語への変更箇所が非常に少ないにもかかわらず、透明な(transparent)マイグレーションを含む柔軟なマイグレーションの形態を記述することができる。 第4章では、第3章で設計されたモーバイル言語の実装について述べられている。このモーバイル言語はJava言語の拡張として設計され実装された。この実装は非常に移植性が高く(portable)、マイグレーションを行うプログラムは標準的なJavaのインタープリターであれば動作させることができる。同様に標準的なjust-in-timeコンパイラであればコンパイルすることができる。マイグレーションを行うプログラムはマイグレーションを行わなかった通常の実行の場合と較べてほぼ同じ速度で動作する。 モーバイル計算に関する研究は盛んであるが、特にプログラミング言語としての側面から研究されたものは非常に少ない。本研究により今後、モーバイル計算を柔軟に記述するためのプログラミング言語システムの設計やその効率的なコンパイル手法などの研究が展開されることが期待される。 なお、本論文は、米澤明憲氏、増原英彦氏との共同研究に基づいているが、論文提出者が主体となって分析及び検証を行なったもので、論文提出者の寄与が十分であると判断する。 従って、博士(理学)を授与できると認める。 |