魔術師をめざして

魔術師を目指して、相場・数学・プログラム言語を研究しています。

Prolog 学習倶楽部(3)

かつて RUN/PROLOGProlog-KABA という Prolog 処理系があった。とくに Prolog-KABA はアセンブラで書かれた高速な国産 Prolog ということで当時注目を集めたようだ。

ぼくはといえば RUN/PROLOG と TURBO PROLOG を持っていたが Prolog 自体への理解はあまりなかったような記憶だ。当時は仕事がいそがしく本格的に勉強するような時間が取れなかったという言い訳で完結している。:P

f:id:fxrobot:20140130004431j:plain

当時は上にあるような RUN/PROLOG 向けの入門書があることすら知らなかった。どれも古書として最近手に入れたものだ。

 「Prolog 学習倶楽部(2)」でも書いたが「RUN/Prolog を用いた Prolog プログラミング入門(鑰山徹 著)」(上の画像左端)は、なかなかの良書だと思う。ぼくの一番気にいった Prolog 入門書だ。

右端の「RUN/Arity Prolog プログラミング入門(大原茂之 著)」は、図表をあまり使わず一行一行丁寧に説明しているスタイルだ。中央の2冊は比較的楽に読める本。

上の4冊はすべて RUN/PROLOG 処理系の名前を使っているが、Prolog そのものの入門にも問題はない。

f:id:fxrobot:20140129231658j:plain

今度の2冊は、どちらも Prolog-KABA を前提とした本だが、こちらも入門書として読んでも問題はないだろう。「はじめての Prolog(舟木奨 著)」は安価には手に入りにくいかも知れない。薄く広く書かれているので読むのは楽だろう。

Prolog-KABA 入門」のほうは出版数が多かったのだろうか今でも手に入れやすい。内容はしっかりしている。この本をしっかり読み込めば入門は完了だ。AZ-PrologProlog-KABA の後継として開発されていると聞いたが、Prolog-KABA の組みこむ述語のいくつかが AZ-Prolog で使えたのでなるほど本当なんだと感じた。

具体的には s_new. や copy0. などが使えた。これらは一部に過ぎないだろう。どこまで継承しているのか、ぼくはまだ正確には把握できていない。しかし「Prolog-KABA 入門」を読んで、AZ-Prolog に取り組むのは良いアイデアのように思える。

ぼくの場合は LGPL/GPL で提供される SWI-Prolog がターゲット処理系なので AZ-Prolog に落ち着いてしまうことは考えられないのだが、AZ-Prolog は少なくともよい学習ツールであるとは思っている。