1990 年 7 巻 1 号 p. 1_33-1_44
本論文では,Prologの宣言的なプログラム記述性の利点を生かしつつ,手続き的側面を強化したプログラミング言語"ALEX"を提案する.ALEXでは,バックトラックを,条件分岐に相当する範ちゅうと,本質的な試行錯誤に相当する範ちゅうの2つに分類し,後者が特定の場合にのみ使用され,そう頻繁には用いられない点に着目して,後者を制限することにした.これにより,Prologの問題点といわれているカットオペレータを排除し,バックトラックの制御を改善した.またコントロールを明示化し,リーダビリティの向上を図った.しかもこれらの実行制御は,述語のプレフィクスとして記述されるため,プレフィクスを無視することにより,Prologと同様プログラムの宣言的な解釈が可能である. 本論文では,まず,Prologのバックトラック制御における問題点を検討し,ALEXの背景になった考えとALEXの言語仕様について述べ,Prologのカットオペレータとの比較を行うことにより,ALEXにおいて,どのようにバックトラック制御が改善されたかを示す.