WEKO3
アイテム
カットオペレータを排除し明示的に制御を行う論理型言語:ALEX
https://ipsj.ixsq.nii.ac.jp/records/31140
https://ipsj.ixsq.nii.ac.jp/records/3114023c576d9-20e5-4fb7-adb3-d6b07861ad49
名前 / ファイル | ライセンス | アクション |
---|---|---|
![]() |
Copyright (c) 1987 by the Information Processing Society of Japan
|
|
オープンアクセス |
Item type | SIG Technical Reports(1) | |||||||
---|---|---|---|---|---|---|---|---|
公開日 | 1987-10-01 | |||||||
タイトル | ||||||||
タイトル | カットオペレータを排除し明示的に制御を行う論理型言語:ALEX | |||||||
タイトル | ||||||||
言語 | en | |||||||
タイトル | ALEX: THE LOGIC PROGRAMMING LANGUAGE WITH EXPLICIT CONTROL AND WITHOUT CUT - OPERATORS | |||||||
言語 | ||||||||
言語 | jpn | |||||||
資源タイプ | ||||||||
資源タイプ識別子 | http://purl.org/coar/resource_type/c_18gh | |||||||
資源タイプ | technical report | |||||||
著者所属 | ||||||||
慶応義塾大学理工学部電気工学科 | ||||||||
著者所属 | ||||||||
慶応義塾大学理工学部電気工学科 | ||||||||
著者所属(英) | ||||||||
en | ||||||||
Dept. of Electrical Engineering Faculty of Science and Technology KEIO University | ||||||||
著者所属(英) | ||||||||
en | ||||||||
Dept. of Electrical Engineering Faculty of Science and Technology KEIO University | ||||||||
著者名 |
星田, 昌紀
所, 真理雄
× 星田, 昌紀 所, 真理雄
|
|||||||
著者名(英) |
Masaki, Hoshida
Mario, Tokoro
× Masaki, Hoshida Mario, Tokoro
|
|||||||
論文抄録 | ||||||||
内容記述タイプ | Other | |||||||
内容記述 | 本論文では Prologの宣言的なプログラム記述性の利点を生かしつつ,手続き的側面を強化したプログラミング言語「ALEX」を提案する。ALEXでは,バックトラックを条件分岐に相当する"Retry"と,本質的な試行錯誤に相当する"Recall"という二つの範ちゅうに分け,この二つを別々の方法でコントロールする。そのコントロールは以下のように行う。"Recall"はデフォルトで不可とし,「許可」を明示したときのみ可能とする。"Retry"はデフォルトで可能とし,「禁止」を明示したときのみ不可とする。このようにコントロールを明示的に記述することによって,カットオペレータを排除し,デバッグの容易化およびリーダビリティーの向上を図っている。また,バックトラックに制限を設けることにより「枝の刈り残し」によるバグも大幅に削減できる。しかもこれらの実行制御は,「述語」のプレフィクスとして記述されるため,プレフィクスを無視することによりPrologと同様,プログラムの宣言的な解釈が可能である。 | |||||||
論文抄録(英) | ||||||||
内容記述タイプ | Other | |||||||
内容記述 | We propose a Prolog-like new programming language "ALEX". It is an extention of Prolog from the view point of procedural programming, keeping the merit of declarative nature of Prolog. In ALEX, the backtrack mechanism is devided into two categories: " Retry" and "Recall". "Retry" corresponds to "branch on condition", while "Recall" coressponds to "essential try and error". And these two actions are controled in different methods. They are controled as follows. "Recall" cannot be performed in default state, and it can be performed only when permitted explicitly. "Retry" can be performed in default state, and it cannot be performed only when prohibited explicitly. By such explicit expresion of execution control, "cut-operators" are excluded. As a result, we can achieve easy debugging and higher readability. And the restriction of the backtrack can effectively reduce the bugs of what we call "Branches forgotten to cut". Further more, since these control is written as prefix of predicate, we can read ALEX programs decaratively as in Prolog by ignoring the prefix. | |||||||
書誌レコードID | ||||||||
収録物識別子タイプ | NCID | |||||||
収録物識別子 | AN10485570 | |||||||
書誌情報 |
情報処理学会研究報告プログラミング(PRO) 巻 1987, 号 72(1987-PRO-022), p. 1-8, 発行日 1987-10-01 |
|||||||
Notice | ||||||||
SIG Technical Reports are nonrefereed and hence may later appear in any journals, conferences, symposia, etc. | ||||||||
出版者 | ||||||||
言語 | ja | |||||||
出版者 | 情報処理学会 |