Relational Language
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2020/10/03 01:23 UTC 版)
「並行論理プログラミング」の記事における「Relational Language」の解説
Relational LanguageはClarkとGregoryが1981年に提案した言語で、その後の並行論理プログラミング言語の基礎となった。HoareのCSPの考え方をIC-Prologに取り入れて拡張し、コミッティッド・チョイスによる非決定的な節の選択機構を持っていた。またストリームによる通信を行うことができた。しかしガード中のゴールは評価時に変数を含んではならないことや、通信にはリストを用いたストリームしか使えないなど、制限が多かった。1つの述語の入出力モード宣言を複数指定でき、また並列実行と逐次実行の両方をサポートするなど、言語仕様も複雑だった。入出力モード宣言の制約は厳格に守る必要があり、1つのストリームを入力と出力の双方向に使う不完全メッセージの技法なども使うことができなかった。言語の特徴を以下にまとめる。 * 同期の表現方法 モード宣言(厳格) (述語単位で指定)* 制約の入出力 Blocking AskとEventual Tell* プロセス間通信 ストリーム* 実行形態 並行実行と逐次実行* その他の特徴 不完全メッセージ使用不可、言語仕様が非常に複雑、制限が多い
※この「Relational Language」の解説は、「並行論理プログラミング」の解説の一部です。
「Relational Language」を含む「並行論理プログラミング」の記事については、「並行論理プログラミング」の概要を参照ください。
- Relational Languageのページへのリンク