並列論理型言語処理系 KLIC のページ

To English Page for "The Home page of KLIC"

このページでは、並列論理型言語KL1のUNIX上の処理系KLICに関連する情報 を公開しています。

KLICはIFSの1つとして開発 されたもので、現在もフリーソフトウェアとして KLIC協会 により配布されています。

[全体構成]


[KLICとは]

KLICは並列論理型言語KL1の処理系です。KL1はGuarded Horn Clauses (GHC) のフラット版に基づいた言語です。GHCはいわゆるcomitted-choice型 の並列論理型言語族の一員で、Concurrent Prolog、Parlog、Janus、Flengな どの兄弟にあたります。

KLIC 処理系は, KL1 プログラムを C プログラムにコンパイルし、それをホス トシステムの C コンパイラでコンパイルし、実行時ライブラリ (UNIX が提供 するものを含む) とリンクして実行する、という方式をとっています。


[配布]

現在配布されている最新版は3.003版です。

最新版は以下の箇所より FTPできます。今回から1次サイトが変更になりました。 日本国内の大学からFTPする場合にはSINETに繋がっている ftp.logos.ic.i.u-tokyo.ac.jp からFTPするのが効率良く転送できるでしょう。

公式版との統合はまだなされていませんが, いくつかのバグフィックスおよび改良を施した版が こちらからたどれます.

KLICは1つの配布中に、逐次実装、並列実装(分散メモリ実装、 共有メモリ実装)などのKLICが構築できるようになっています。以 後で、「逐次版」、「並列版」などと言っていますが、これらは配 布形態としてはすべて同一で、単一のものです。つまり、 上記の版をダウンロードすれば、 様々な版のKLICをインストールすることができます。

残念なことですが、3.003版のKLICでも、3.001, 3.002版と同様、 並列共有メモリ実装はバグが発見されているので、 共有メモリ版をご利用の場合には、まだバージョンアップすることを 避け、以前の版である 2.2版を利用するようにしてください。

3.003版で動作確認を行なったプラットフォームは以下の通りです。 逐次版、PVMを使った並列版はさらに多くのプラットフォームで 簡単に動作することが期待されています。 ここに掲載されていないプラットフォームで動作した/動作しなかった、という情報を どうかお寄せ下さい。

逐次版
並列版


[KLICのドキュメント]

KLICの配布物中には、リファレンスマニュアル、チュートリアルが含まれていますが、 さらに、以下のような文書が用意されています。

KLIC講習会テキスト
KL1言語編
KLIC講習会テキスト
KLICシステム編
KL1講習会資料
KL1入門 (PowerPointファイル。東大 近山先生のご好意)
KLICの実装詳細解説書
Inside KLIC


[問い合わせ]

バグ報告やコメントは下記のアドレスにお送り下さい。

klic-bugs@klic.org

見つけたバグや不具合は是非お知らせ下さい。すべてのユーザのための次版以 降の改良のためにたいへん大事な情報です。


[通知と情報交換]

バグ、バグ修正、新版の提供などの通知は下記のメイリングリストを通じて行 ないます。

klic-ml@klic.org

このメイリングリストはユーザ間の情報交換にも使えます。ただし、このメー リングリストの公用語は英語ですので、日本語によるご利用はご遠慮ください。

メイリングリストへの登録や抹消は KLIC 協会のページから出来ます.


[過去の版との違い]

3.002版と3.003版の違いを以下に書きます。

なお、以下が3.002版と3.001版との違いです。

ちなみに、2.002版と3.001版の差分は以下の通りです。 ただし追加された機能についてはドキュメントがまだ不十分な部分はあります。

分散メモリ実装版のバリエーション
分散メモリ実装版で、用いる通信路にバリエーションが増え、以下の3つより 選択可能となりました。
  • PVM (これまでと同じ)。
  • TCP/IP socket (ただし、PVMは必要)。
  • 共有メモリ(共有メモリ版とは異なり、プロセッサ間通信にのみ共有メモリを 用いる。PVMは不要)。

通信の効率はここで挙げた順で良くなります。一方、 PVMを使うものはかなり汎用性があると考えられますが、 「共有メモリ」を用いたものはSUN SPARC SOLARIS 2.x, DEC Alpha、 PC-AT(Intel x86)の並列機の上でしか基本的に動作しません。

並列版での浮動小数点数の利用
浮動小数点数はこれまでプロセッサ間でやりとり することはできませんでしたが、可能になりました。

Linux, FreeBSDのサポートの追加
最近メジャーであるFree UNIXのうち、Linux, FreeBSDでも 動作できるようになりました(但し、PC-AT上でしか確認されていません)。

ゴールオブジェクト
ユーザがデバガを記述することができるような枠組として ゴールオブジェクトが追加されました(東大近山研の研究成果を 導入させていただきました)。

マクロプリプロセッサ
コンパイラから独立して、単体で動作するマクロプリプロセッサが用意 されました(KL1PP.jを参照のこと)。

ドキュメント
ドキュメントがプログラムに合わせ改訂されました。

バグフィックス
様々なバグフィックスがなされました。したがって、 共有メモリ版を利用している場合を除きバージョンアップをしていただくのが 適切でしょう。


Last Update : 99/03/31 19:48
Copyright © 1999
KLIC Association. All Rights Reserved.
For Information: klic-adm@klic.org