Erlang, Oz/Mozart, Prolog, 単一化 ― 2008年01月02日 10時05分40秒
標題: Erlang, Oz/Mozart, Prolog, 単一化
---
Erlangのこと、あれこれやってたから、弾さんのコメントがあった。
http://blog.livedoor.jp/dankogai/archives/50832431.html
そろそろerlangについて一言いっとくか
で、
--- ここから ---
変数束縛が
Variable = Value.
なのに、関数定義が
function(Aargument) -> blah, blah, blah.
てのはどうよ?
--- ここまで ---
と書いているが、弾さん、こんなのさ、どうよ?と挑発されたら、「お前がバ
カ」の一言で終わり。\(^O^)/
= が単なる変数束縛だと思っているところが、もう、アウト!\(^O^)/
これ、ココロは、Prologの単一化(ユニフィケーション, unification)なん
だよ。だから、関数定義とは別の記号を使っているんだと思うけどね。
ま、個人的には同じ記号だろうが別の記号だろうが、どうでもいいことだけ
ど、変数の束縛は単一化の特殊ケースだということは、知っておいていいと思
う。
HaskellやOCamlなどもそう思うし、Erlang, Oz/Mozart(MozartはOzの実装)
もそうだけど、Prolog以後のヨーロッパの言語って、Prolog的なものをうまく
入れてるなと思う。これらの言語にあるパターンマッチは、おれには全部
Prologの単一化の簡略版に思えるからね。
HaskellもOCamlもErlangもそうだけど、このパターンマッチは、Prologとは
違って、片方向なんだよね。
http://www.amazon.co.jp/exec/obidos/ASIN/193435600X/showshotcorne-22/
Joe Armstrong著「Programming Erlang: Software for a Concurrent World」
では、= の動作は、Prologの単一化でバックトラックがないものくらいに考え
てくれなんて脚注があるが、片方向だと、フツー、単一化とは言いがたいので、
それでパターンマッチだといってるんだろうね。言葉も一般向けだし。
他の言語の = が片方向なのに比べ、Ozの = は双方向になっている。どうい
う意味かといえば、Ozで、X, Z, Bが宣言はされているが、未束縛だとすると、
[X 'b' Z] = ['a' B 'c']
と書いたら、Xは'a'、Zは'c'、Bは'b'になる。
ちゃんとした単一化だから。= の左辺と右辺の両方を書き換えてマッチさせ
ようとしているわけ。Oz言語の仕様を実装したMozartでやると実際そうなる。
プログラミングスタイルとしては、推奨されないようだが。
この辺のことは、たびたび紹介しているCTM、つまり、
http://www.amazon.co.jp/exec/obidos/ASIN/4798113468/showshotcorne-22/
セイフ・ハリディ, ピーター・ヴァン・ロイ, 羽永洋訳「コンピュータプログ
ラミングの概念・技法・モデル」
でアルゴリズムも含めて詳しく書いてある。その他ぼくが書いたCTMのことは、
ウェブやブログにつけている検索窓に CTM を入れて検索してもらえば。
Oz/Mozart, CTMの補足については、このあと別に書く。
で、ふと、思ったのが、いま、日本では関数型言語が注目されているなどと
いうが、最近、関数型言語に触れた人は、Prologや単一化や論理型プログラミ
ングや制約プログラミングなど、全然、知らないんじゃないかと。
弾さんですら、あんなこと書いているくらいだし。\(^O^)/
おれも、ほとんど知らないけどさ。\(^O^)/
知らないけど、知ったことにして、人に薦めて焚きつけてしまうのがおれの
すごいところ。\(^O^)/
そこで、我が情報省は、緊急アンケートをした。\(^O^)/
関数型言語をかじった人、1000人に聞きました。
おい、日本にかじった奴、1000人もいないと思うぞ。
そ、そうか。^^; じゃ、100人に聞きました。あなたは、Prologや単一化や
論理型プログラミングを知っていますか?
そしたら、あなた、100人中3.5人しか知りませんでした。\(^O^)/
ほんとかよ、そのアンケート。
まあ、そういうことにしないと後の話につながらないので、テキトーよ。こ
れ、広告屋やマーケ屋がやってるのと同じね。\(^O^)/
それはいいとして、3.5人の0.5人って何だよ。
あ、それは、答えてくれたのが、まだ、胎児だったんです。\(^O^)/
超天才だろ、その子。国家で保護して日本の救世主にしろ。\(^O^)/
ってなわけで、大学やらどこでもいいけど、コンピュータサイエンス、計算
機科学、情報科学、情報工学なんでもいいけど、そういうところで、まっとう
なカリキュラムを持ってるところだと、関数型を教えて論理型を教えないなん
て、おれの常識からは、考えられない。関数型言語ブームで論理型がさっぱり
忘れ去られているとすれば、バランスを欠いていると思えるのね。
なんたって、あなた、1980年代AIブームのときは、第5世代コンピュータプ
ロジェクトもあって、日本は世界最高の論理型プログラミング王国、Prolog王
国だったんだから。それが、20年足らずでこのテイタラク。
世界最高水準だったコンパイラ技術を捨て、プロセッサ技術を捨て、論理型
プログラミング技術を捨て、ああ、日本はどうなってしまうんだ(爆)。\(^O^)/
大体ね、関数型を知ってて、論理型を知らないなんて、ドラエモンは知って
るのに、サザエさんを知らないみたいなもんだろ。
ワケがわからん。
じゃ、ポケモンは知ってるのに、ゴルゴ13を知らないみたいなもんだ。
やっぱりわからんけど、少しはニュアンスは伝わるかな。\(^O^)/
ヨーロッパは、Prolog的なものを以後の言語に入れているし、AIブーム時に
Lispが主流だったアメリカでもLispの中に入れている。
FranzのAllegro Common Lispには最初から入っているね。
http://jp.franz.com/index.html
Allegro Common Lispの日本語サイト
http://www.franz.com/products/prolog/index.lhtml
Allegro Prolog
まっとうなLisper/Schemerなら、みんなPrologをよく知ってるから、Lispで
Prologを書くのは定番化している。
http://iiyu.asablo.jp/blog/2006/12/31/1082233
AIプログラミング
や、
http://iiyu.asablo.jp/blog/2007/12/29/2534861
The Reasoned SchemerとLisp, AI本
で紹介した
http://www.amazon.co.jp/exec/obidos/ASIN/1558601910/showshotcorne-22/
Peter Norvig著「Paradigms of Artificial Intelligence Programming: Case
Studies in Common Lisp」
でも、PrologをLispで書いているし(これがAllegro Prologのベース)、
http://iiyu.asablo.jp/blog/2007/03/23/1337051
うぉぉ、「On Lisp」日本語版が来たぁぁ\(^O^)/\(^O^)/\(^O^)/
で、出版を喜んだ
http://www.amazon.co.jp/exec/obidos/ASIN/4274066371/showshotcorne-22/
Paul Graham著、野田開訳「On Lisp」
でも、Prologを書いているし、
http://iiyu.asablo.jp/blog/2007/01/11/1107622
全文検索とSBCによるサムネイル化デモ
で一番の掘り出し物だと紹介した
--- ここから ---
今回、一番掘り出し物だと思ったのが、神戸大学のLispマシンとPrologマシ
ンの話。
高水準言語マシンを知らない人は、ご一読を。
http://www.ipsj.or.jp/katsudou/museum/paper/magazine/IPSJ-MGN430205.pdf
神戸大 LISP マシン、PROLOG マシン
--- ここまで ---
とかもあったのよね。
なぜ欧米(日本以外では?)では、Prologや論理型プログラミングが脈々と受
け継がれているかといえば、計算モデルとして重要だし、面白いということも
あるし、制約プログラミングの話もあるし、Prologの非決定性の探索は魅力的
だし、現実の応用でも問い合わせ言語に使われたりしてきたから。
上記の本でも、AI的な探索手法の解説で、Prolog的な探索を実装しているわ
け。前述のCTMの中でも、当然、Prologを紹介して論理型プログラミングを解
説してある。
さっき紹介したAllegroは、RDFやオントロジーの検索にProlog的なものを使
っている。
それくらい、この辺の話は、重要なのよ。だから、
http://iiyu.asablo.jp/blog/2007/12/29/2534861
The Reasoned SchemerとLisp, AI本
で書いた
--- ここから ---
AI的なプログラミング技法は、データマイニング、テキストマイニングなど
知的な検索やら、自然言語解析やら、言語、画像、音声などの各種認識やら、
いまますます重要になっていますし、今後もますます重要になります。したが
って、AI的なことを知っておくのは、これからの技術者には非常に重要なこと
だと思っています。
--- ここまで ---
というのは、ほんとの気持ち。
今回、Prologや単一化のことを検索したら、面白いものがあった。非常にす
ばらしいと思ったので紹介する。
http://www2.biglobe.ne.jp/~optimist/computing/prolog.html
Prolog
と
http://www2.biglobe.ne.jp/~optimist/computing/unification.html
単一化(unification)
をどうぞ。ささいな間違いがあったので、作者の古田さんに連絡したら、ソッ
コーで修正してくださった。ありがとうございます。
前者は、簡単なPrologのプログラムがブラウザから直接実行できる。なんと
JavaScriptでPrologを書いてあるのね。\(^O^)/
後者は、単一化の解説。数学的な記述なので、受け付けない人もいるかもし
れないけれど、単一化とはどういうことかきちんと書いてある、わかりやすい
解説。さっき出てきたOzの = は、この解説でいう単一化代入。Ozの場合は、
データフロー変数や部分値があるから、もうひとひねりあるけれどね。
Prologの入門として、今回発見したのが、
http://www.fujita.soft.iwate-pu.ac.jp/prof_dir/kure/Lecture/Prolog/
岩手県立大学の平成14年度「知能システム学」Prolog編
という講義資料。
岩手県立大学は、できて2、3年のときにお邪魔したことがある。非常にき
れいなキャンパスだった。
これを書いた槫松(くれまつ)先生の講義のページ
http://www.fujita.soft.iwate-pu.ac.jp/prof_dir/kure/lectures.html
をみると、過去の資料扱いになっているから、もう、直接はPrologは教えてな
いかもしれないね。でも、ちゃんと
http://www.fujita.soft.iwate-pu.ac.jp/prof_dir/kure/Lecture/Lisp/lisptop.html
に、Lispもある。
関数型Lispと論理型Prologの両方を教えている! これがまっとうなカリキ
ュラムだよ。\(^O^)/
いまは自然言語処理のほうの授業に力を入れているようだが、そういう方面
をやると、LispやProlog的なものはやらざるを得ないから、その過程で独習さ
せているのかもしれない。
どんどん脱線するが、槫松先生の属する藤田ハミド先生の研究室のウェブ
http://www.fujita.soft.iwate-pu.ac.jp/index.html
をみると、「宮沢賢治プロジェクト」なるものをやってるね。さすが宮沢賢治
の地元!
プロジェクトの目標は、「宮沢賢治自身をコンピュータ上に再現する!」
すごーい。気宇壮大でいい。\(^O^)/
こういうの、どんどんやってほしいね。
地元、お膝元といえば、ヨーロッパではお膝元ということもあって、Prolog
は実用に使われているし、実装はいまでも改良されている。
Prologの実装一覧は、
http://lang.x0.com/logic/prolog/proc.htm
Prologリンク集:処理系
がよさげ。
その上のレベル
http://lang.x0.com/logic/index.html
論理型言語リンク集
をみると、Prolog以外にもいくつかある。Mercuryは、CTMでも出てくるが、
Goedelなんてのもあるのね。
Prologの処理系に戻ると、日本でも、
http://www.kprolog.com/
で、K-Prologという処理系を作って売ってる
http://www.kprolog.com/KLS/
株式会社KLS研究所
という会社があるのね。
http://www.ifcomputer.com/IFProlog/home_jp.html
のほうは、日本支店か代理店っぽいけれど。
SICStus PrologとQuintus Prologは、両方ともスウェーデンの組織が配って
るね。Erlangもスウェーデンだし、Prologの血脈だし、いま世界一のProlog王
国はスウェーデンなのだろうか。
このリストにはないけど、Javaで書かれた
http://www.ugosweb.com/jiprolog/index.aspx
JIProlog - Java Internet Prolog
というのもある。
これもリストにはないけど、KL1は、第五世代コンピュータプロジェクトで
作られたPrologを大幅拡張した言語。
第五世代コンピュータプロジェクトの総括は、
http://iiyu.asablo.jp/blog/2006/08/10/479111
第五世代コンピュータプロジェクトは死なず!\(^O^)/
で紹介したので、暇なら読んでみて。KL1は、いま、KLICとして存在している
けれど、ICOTで開発した高水準言語マシンは、稼動するものが現存しているの
だろうか。ちゃんと文化財として保存しておいてほしいんだけどね。
その他、第五世代コンピュータについては、
http://ja.wikipedia.org/wiki/第五世代コンピュータ
を参照。
おれさまが2008年の最初に論理型プログラミングのことを書いたから、今年
は論理型プログラミングの当たり年になるぞ。\(^O^)/
---
Erlangのこと、あれこれやってたから、弾さんのコメントがあった。
http://blog.livedoor.jp/dankogai/archives/50832431.html
そろそろerlangについて一言いっとくか
で、
--- ここから ---
変数束縛が
Variable = Value.
なのに、関数定義が
function(Aargument) -> blah, blah, blah.
てのはどうよ?
--- ここまで ---
と書いているが、弾さん、こんなのさ、どうよ?と挑発されたら、「お前がバ
カ」の一言で終わり。\(^O^)/
= が単なる変数束縛だと思っているところが、もう、アウト!\(^O^)/
これ、ココロは、Prologの単一化(ユニフィケーション, unification)なん
だよ。だから、関数定義とは別の記号を使っているんだと思うけどね。
ま、個人的には同じ記号だろうが別の記号だろうが、どうでもいいことだけ
ど、変数の束縛は単一化の特殊ケースだということは、知っておいていいと思
う。
HaskellやOCamlなどもそう思うし、Erlang, Oz/Mozart(MozartはOzの実装)
もそうだけど、Prolog以後のヨーロッパの言語って、Prolog的なものをうまく
入れてるなと思う。これらの言語にあるパターンマッチは、おれには全部
Prologの単一化の簡略版に思えるからね。
HaskellもOCamlもErlangもそうだけど、このパターンマッチは、Prologとは
違って、片方向なんだよね。
http://www.amazon.co.jp/exec/obidos/ASIN/193435600X/showshotcorne-22/
Joe Armstrong著「Programming Erlang: Software for a Concurrent World」
では、= の動作は、Prologの単一化でバックトラックがないものくらいに考え
てくれなんて脚注があるが、片方向だと、フツー、単一化とは言いがたいので、
それでパターンマッチだといってるんだろうね。言葉も一般向けだし。
他の言語の = が片方向なのに比べ、Ozの = は双方向になっている。どうい
う意味かといえば、Ozで、X, Z, Bが宣言はされているが、未束縛だとすると、
[X 'b' Z] = ['a' B 'c']
と書いたら、Xは'a'、Zは'c'、Bは'b'になる。
ちゃんとした単一化だから。= の左辺と右辺の両方を書き換えてマッチさせ
ようとしているわけ。Oz言語の仕様を実装したMozartでやると実際そうなる。
プログラミングスタイルとしては、推奨されないようだが。
この辺のことは、たびたび紹介しているCTM、つまり、
http://www.amazon.co.jp/exec/obidos/ASIN/4798113468/showshotcorne-22/
セイフ・ハリディ, ピーター・ヴァン・ロイ, 羽永洋訳「コンピュータプログ
ラミングの概念・技法・モデル」
でアルゴリズムも含めて詳しく書いてある。その他ぼくが書いたCTMのことは、
ウェブやブログにつけている検索窓に CTM を入れて検索してもらえば。
Oz/Mozart, CTMの補足については、このあと別に書く。
で、ふと、思ったのが、いま、日本では関数型言語が注目されているなどと
いうが、最近、関数型言語に触れた人は、Prologや単一化や論理型プログラミ
ングや制約プログラミングなど、全然、知らないんじゃないかと。
弾さんですら、あんなこと書いているくらいだし。\(^O^)/
おれも、ほとんど知らないけどさ。\(^O^)/
知らないけど、知ったことにして、人に薦めて焚きつけてしまうのがおれの
すごいところ。\(^O^)/
そこで、我が情報省は、緊急アンケートをした。\(^O^)/
関数型言語をかじった人、1000人に聞きました。
おい、日本にかじった奴、1000人もいないと思うぞ。
そ、そうか。^^; じゃ、100人に聞きました。あなたは、Prologや単一化や
論理型プログラミングを知っていますか?
そしたら、あなた、100人中3.5人しか知りませんでした。\(^O^)/
ほんとかよ、そのアンケート。
まあ、そういうことにしないと後の話につながらないので、テキトーよ。こ
れ、広告屋やマーケ屋がやってるのと同じね。\(^O^)/
それはいいとして、3.5人の0.5人って何だよ。
あ、それは、答えてくれたのが、まだ、胎児だったんです。\(^O^)/
超天才だろ、その子。国家で保護して日本の救世主にしろ。\(^O^)/
ってなわけで、大学やらどこでもいいけど、コンピュータサイエンス、計算
機科学、情報科学、情報工学なんでもいいけど、そういうところで、まっとう
なカリキュラムを持ってるところだと、関数型を教えて論理型を教えないなん
て、おれの常識からは、考えられない。関数型言語ブームで論理型がさっぱり
忘れ去られているとすれば、バランスを欠いていると思えるのね。
なんたって、あなた、1980年代AIブームのときは、第5世代コンピュータプ
ロジェクトもあって、日本は世界最高の論理型プログラミング王国、Prolog王
国だったんだから。それが、20年足らずでこのテイタラク。
世界最高水準だったコンパイラ技術を捨て、プロセッサ技術を捨て、論理型
プログラミング技術を捨て、ああ、日本はどうなってしまうんだ(爆)。\(^O^)/
大体ね、関数型を知ってて、論理型を知らないなんて、ドラエモンは知って
るのに、サザエさんを知らないみたいなもんだろ。
ワケがわからん。
じゃ、ポケモンは知ってるのに、ゴルゴ13を知らないみたいなもんだ。
やっぱりわからんけど、少しはニュアンスは伝わるかな。\(^O^)/
ヨーロッパは、Prolog的なものを以後の言語に入れているし、AIブーム時に
Lispが主流だったアメリカでもLispの中に入れている。
FranzのAllegro Common Lispには最初から入っているね。
http://jp.franz.com/index.html
Allegro Common Lispの日本語サイト
http://www.franz.com/products/prolog/index.lhtml
Allegro Prolog
まっとうなLisper/Schemerなら、みんなPrologをよく知ってるから、Lispで
Prologを書くのは定番化している。
http://iiyu.asablo.jp/blog/2006/12/31/1082233
AIプログラミング
や、
http://iiyu.asablo.jp/blog/2007/12/29/2534861
The Reasoned SchemerとLisp, AI本
で紹介した
http://www.amazon.co.jp/exec/obidos/ASIN/1558601910/showshotcorne-22/
Peter Norvig著「Paradigms of Artificial Intelligence Programming: Case
Studies in Common Lisp」
でも、PrologをLispで書いているし(これがAllegro Prologのベース)、
http://iiyu.asablo.jp/blog/2007/03/23/1337051
うぉぉ、「On Lisp」日本語版が来たぁぁ\(^O^)/\(^O^)/\(^O^)/
で、出版を喜んだ
http://www.amazon.co.jp/exec/obidos/ASIN/4274066371/showshotcorne-22/
Paul Graham著、野田開訳「On Lisp」
でも、Prologを書いているし、
http://iiyu.asablo.jp/blog/2007/01/11/1107622
全文検索とSBCによるサムネイル化デモ
で一番の掘り出し物だと紹介した
--- ここから ---
今回、一番掘り出し物だと思ったのが、神戸大学のLispマシンとPrologマシ
ンの話。
高水準言語マシンを知らない人は、ご一読を。
http://www.ipsj.or.jp/katsudou/museum/paper/magazine/IPSJ-MGN430205.pdf
神戸大 LISP マシン、PROLOG マシン
--- ここまで ---
とかもあったのよね。
なぜ欧米(日本以外では?)では、Prologや論理型プログラミングが脈々と受
け継がれているかといえば、計算モデルとして重要だし、面白いということも
あるし、制約プログラミングの話もあるし、Prologの非決定性の探索は魅力的
だし、現実の応用でも問い合わせ言語に使われたりしてきたから。
上記の本でも、AI的な探索手法の解説で、Prolog的な探索を実装しているわ
け。前述のCTMの中でも、当然、Prologを紹介して論理型プログラミングを解
説してある。
さっき紹介したAllegroは、RDFやオントロジーの検索にProlog的なものを使
っている。
それくらい、この辺の話は、重要なのよ。だから、
http://iiyu.asablo.jp/blog/2007/12/29/2534861
The Reasoned SchemerとLisp, AI本
で書いた
--- ここから ---
AI的なプログラミング技法は、データマイニング、テキストマイニングなど
知的な検索やら、自然言語解析やら、言語、画像、音声などの各種認識やら、
いまますます重要になっていますし、今後もますます重要になります。したが
って、AI的なことを知っておくのは、これからの技術者には非常に重要なこと
だと思っています。
--- ここまで ---
というのは、ほんとの気持ち。
今回、Prologや単一化のことを検索したら、面白いものがあった。非常にす
ばらしいと思ったので紹介する。
http://www2.biglobe.ne.jp/~optimist/computing/prolog.html
Prolog
と
http://www2.biglobe.ne.jp/~optimist/computing/unification.html
単一化(unification)
をどうぞ。ささいな間違いがあったので、作者の古田さんに連絡したら、ソッ
コーで修正してくださった。ありがとうございます。
前者は、簡単なPrologのプログラムがブラウザから直接実行できる。なんと
JavaScriptでPrologを書いてあるのね。\(^O^)/
後者は、単一化の解説。数学的な記述なので、受け付けない人もいるかもし
れないけれど、単一化とはどういうことかきちんと書いてある、わかりやすい
解説。さっき出てきたOzの = は、この解説でいう単一化代入。Ozの場合は、
データフロー変数や部分値があるから、もうひとひねりあるけれどね。
Prologの入門として、今回発見したのが、
http://www.fujita.soft.iwate-pu.ac.jp/prof_dir/kure/Lecture/Prolog/
岩手県立大学の平成14年度「知能システム学」Prolog編
という講義資料。
岩手県立大学は、できて2、3年のときにお邪魔したことがある。非常にき
れいなキャンパスだった。
これを書いた槫松(くれまつ)先生の講義のページ
http://www.fujita.soft.iwate-pu.ac.jp/prof_dir/kure/lectures.html
をみると、過去の資料扱いになっているから、もう、直接はPrologは教えてな
いかもしれないね。でも、ちゃんと
http://www.fujita.soft.iwate-pu.ac.jp/prof_dir/kure/Lecture/Lisp/lisptop.html
に、Lispもある。
関数型Lispと論理型Prologの両方を教えている! これがまっとうなカリキ
ュラムだよ。\(^O^)/
いまは自然言語処理のほうの授業に力を入れているようだが、そういう方面
をやると、LispやProlog的なものはやらざるを得ないから、その過程で独習さ
せているのかもしれない。
どんどん脱線するが、槫松先生の属する藤田ハミド先生の研究室のウェブ
http://www.fujita.soft.iwate-pu.ac.jp/index.html
をみると、「宮沢賢治プロジェクト」なるものをやってるね。さすが宮沢賢治
の地元!
プロジェクトの目標は、「宮沢賢治自身をコンピュータ上に再現する!」
すごーい。気宇壮大でいい。\(^O^)/
こういうの、どんどんやってほしいね。
地元、お膝元といえば、ヨーロッパではお膝元ということもあって、Prolog
は実用に使われているし、実装はいまでも改良されている。
Prologの実装一覧は、
http://lang.x0.com/logic/prolog/proc.htm
Prologリンク集:処理系
がよさげ。
その上のレベル
http://lang.x0.com/logic/index.html
論理型言語リンク集
をみると、Prolog以外にもいくつかある。Mercuryは、CTMでも出てくるが、
Goedelなんてのもあるのね。
Prologの処理系に戻ると、日本でも、
http://www.kprolog.com/
で、K-Prologという処理系を作って売ってる
http://www.kprolog.com/KLS/
株式会社KLS研究所
という会社があるのね。
http://www.ifcomputer.com/IFProlog/home_jp.html
のほうは、日本支店か代理店っぽいけれど。
SICStus PrologとQuintus Prologは、両方ともスウェーデンの組織が配って
るね。Erlangもスウェーデンだし、Prologの血脈だし、いま世界一のProlog王
国はスウェーデンなのだろうか。
このリストにはないけど、Javaで書かれた
http://www.ugosweb.com/jiprolog/index.aspx
JIProlog - Java Internet Prolog
というのもある。
これもリストにはないけど、KL1は、第五世代コンピュータプロジェクトで
作られたPrologを大幅拡張した言語。
第五世代コンピュータプロジェクトの総括は、
http://iiyu.asablo.jp/blog/2006/08/10/479111
第五世代コンピュータプロジェクトは死なず!\(^O^)/
で紹介したので、暇なら読んでみて。KL1は、いま、KLICとして存在している
けれど、ICOTで開発した高水準言語マシンは、稼動するものが現存しているの
だろうか。ちゃんと文化財として保存しておいてほしいんだけどね。
その他、第五世代コンピュータについては、
http://ja.wikipedia.org/wiki/第五世代コンピュータ
を参照。
おれさまが2008年の最初に論理型プログラミングのことを書いたから、今年
は論理型プログラミングの当たり年になるぞ。\(^O^)/
コメント
_ 大黒学 ― 2008年02月04日 11時45分51秒
_ 或るダメ学生 ― 2008年03月19日 21時23分35秒
中村さん、いつもblogを拝見しております。
私は、慶應義塾大学総合政策学部という所でダメ学生をやっている者です。
ウチの大学には、LISPとPrologの授業がちゃんと、両方あります。僕は両方とも履修しました。ですが大多数の学生は、JavaかSqueak(Schemeではなく)をやっているうちにプログラミングが嫌になり、LISPやPrologなどには見向きもしません。
LISPを教えて下さったのは安村通晃先生という方で、認知やユーザーインターフェースの研究されています。
Prologを教えて下さったのは、ICOTにいらっしゃった向井国昭先生です。向井先生は、全然学生に媚びた「簡単な」授業をしないので、Prologの授業なのにいつのまにか脱線して難しい論理学や代数学の話が出てくるので、それが面白くて(難解すぎてあまり理解できませんでしたが)僕は毎回ちゃんと出席していました。
しかし、学事やコンピュータ・サイエンスに無理解な他の先生から「論理プログラミング」の授業を止めろ、と言われたりするそうです。変な話です。
とある先輩の話では、4-5年前まで湘南藤沢キャンパスにはProgolという帰納論理プログラミングをサポートした処理系を使ってinductive logic programmingをする授業もあったそうです。
慶應義塾大学湘南藤沢キャンパス 論理プログラミング(向井国昭先生・尾崎知伸先生)
http://web.sfc.keio.ac.jp/~mukai/2006-LP/04/index.html
http://web.sfc.keio.ac.jp/~mukai/mathcgi/
私は、慶應義塾大学総合政策学部という所でダメ学生をやっている者です。
ウチの大学には、LISPとPrologの授業がちゃんと、両方あります。僕は両方とも履修しました。ですが大多数の学生は、JavaかSqueak(Schemeではなく)をやっているうちにプログラミングが嫌になり、LISPやPrologなどには見向きもしません。
LISPを教えて下さったのは安村通晃先生という方で、認知やユーザーインターフェースの研究されています。
Prologを教えて下さったのは、ICOTにいらっしゃった向井国昭先生です。向井先生は、全然学生に媚びた「簡単な」授業をしないので、Prologの授業なのにいつのまにか脱線して難しい論理学や代数学の話が出てくるので、それが面白くて(難解すぎてあまり理解できませんでしたが)僕は毎回ちゃんと出席していました。
しかし、学事やコンピュータ・サイエンスに無理解な他の先生から「論理プログラミング」の授業を止めろ、と言われたりするそうです。変な話です。
とある先輩の話では、4-5年前まで湘南藤沢キャンパスにはProgolという帰納論理プログラミングをサポートした処理系を使ってinductive logic programmingをする授業もあったそうです。
慶應義塾大学湘南藤沢キャンパス 論理プログラミング(向井国昭先生・尾崎知伸先生)
http://web.sfc.keio.ac.jp/~mukai/2006-LP/04/index.html
http://web.sfc.keio.ac.jp/~mukai/mathcgi/
_ さかい ― 2008年03月28日 03時37分25秒
或るダメ学生さん、
> とある先輩の話では、4-5年前まで湘南藤沢キャンパスにはProgolという帰納論理プログラミングをサポートした処理系を使ってinductive logic programmingをする授業もあったそうです。
ちなみに、「知識獲得法」という授業名で今でも残っていますよ。
http://furukawa.sfc.keio.ac.jp/course/KD07/index.htm
来期からどうなるのかは知りませんが。
> とある先輩の話では、4-5年前まで湘南藤沢キャンパスにはProgolという帰納論理プログラミングをサポートした処理系を使ってinductive logic programmingをする授業もあったそうです。
ちなみに、「知識獲得法」という授業名で今でも残っていますよ。
http://furukawa.sfc.keio.ac.jp/course/KD07/index.htm
来期からどうなるのかは知りませんが。
※メールアドレスとURLの入力は必須ではありません。 入力されたメールアドレスは記事に反映されず、ブログの管理者のみが参照できます。
※なお、送られたコメントはブログの管理者が確認するまで公開されません。
※投稿には管理者が設定した質問に答える必要があります。
トラックバック
このエントリのトラックバックURL: http://iiyu.asablo.jp/blog/2008/01/02/2541270/tb
_ ホットコーナーの舞台裏 - 2008年01月02日 10時42分26秒
ASAHIネット(http://www.asahi-net.or.jp)のjouwa/salonからホットコーナー(http://www.asahi-net.or.jp/~ki4s-nkmr/ )に転載したものから。
---
http://iiyu.asablo.jp/blog/2008/01/02/2541270
Erlang, Oz/Mozart, Prolog, 単一化
で
---
http://iiyu.asablo.jp/blog/2008/01/02/2541270
Erlang, Oz/Mozart, Prolog, 単一化
で
_ ホットコーナーの舞台裏 - 2008年02月07日 10時25分48秒
ASAHIネット(http://www.asahi-net.or.jp)のjouwa/salonからホットコーナー(http://www.asahi-net.or.jp/~ki4s-nkmr/ )に転載したものから。
---
http://iiyu.asablo.jp/blog/2008/01/02/2541270
Erlang, Oz/Mozart, Prolog, 単一化
に
---
http://iiyu.asablo.jp/blog/2008/01/02/2541270
Erlang, Oz/Mozart, Prolog, 単一化
に
_ ホットコーナーの舞台裏 - 2008年02月29日 00時34分55秒
ASAHIネット(http://www.asahi-net.or.jp)のjouwa/salonからホットコーナー(http://www.asahi-net.or.jp/~ki4s-nkmr/ )に転載したものから。
---
amazonが、「お前、わかりもしねえのに、コンピュータサイエン
---
amazonが、「お前、わかりもしねえのに、コンピュータサイエン
_ ホットコーナーの舞台裏 - 2008年03月09日 06時45分28秒
ASAHIネット(http://www.asahi-net.or.jp)のjouwa/salonからホットコーナー(http://www.asahi-net.or.jp/~ki4s-nkmr/ )に転載したものから。
---
http://iiyu.asablo.jp/blog/2007/11/29/2464148
Programming Erlang, The Pragmatic Bookshel
---
http://iiyu.asablo.jp/blog/2007/11/29/2464148
Programming Erlang, The Pragmatic Bookshel
_ ホットコーナーの舞台裏 - 2008年03月09日 06時46分01秒
ASAHIネット(http://www.asahi-net.or.jp)のjouwa/salonからホットコーナー(http://www.asahi-net.or.jp/~ki4s-nkmr/ )に転載したものから。
---
http://iiyu.asablo.jp/blog/2007/11/29/2464148
Programming Erlang, The Pragmatic Bookshel
---
http://iiyu.asablo.jp/blog/2007/11/29/2464148
Programming Erlang, The Pragmatic Bookshel
_ ホットコーナーの舞台裏 - 2008年03月23日 00時39分37秒
ASAHIネット(http://www.asahi-net.or.jp)のjouwa/salonからホットコーナー(http://www.asahi-net.or.jp/~ki4s-nkmr/ )に転載したものから。
---
http://iiyu.asablo.jp/blog/2008/03/22/2810715
日本のコンピュータ博物館
で
---
http://iiyu.asablo.jp/blog/2008/03/22/2810715
日本のコンピュータ博物館
で
_ ホットコーナーの舞台裏 - 2008年03月23日 00時40分36秒
ASAHIネット(http://www.asahi-net.or.jp)のjouwa/salonからホットコーナー(http://www.asahi-net.or.jp/~ki4s-nkmr/ )に転載したものから。
---
http://iiyu.asablo.jp/blog/2008/01/02/2541270
Erlang, Oz/Mozart, Prolog, 単一化
に
---
http://iiyu.asablo.jp/blog/2008/01/02/2541270
Erlang, Oz/Mozart, Prolog, 単一化
に
_ ホットコーナーの舞台裏 - 2008年09月21日 07時55分29秒
ASAHIネット(http://www.asahi-net.or.jp)のjouwa/salonからホットコーナー(http://www.asahi-net.or.jp/~ki4s-nkmr/ )に転載したものから。
---
http://iiyu.asablo.jp/blog/2008/09/19/3772078
のKenjiさんのコメント。
ブ
---
http://iiyu.asablo.jp/blog/2008/09/19/3772078
のKenjiさんのコメント。
ブ
_ ホットコーナーの舞台裏 - 2008年11月26日 05時46分00秒
ASAHIネット(http://www.asahi-net.or.jp)のjouwa/salonからホットコーナー(http://www.asahi-net.or.jp/~ki4s-nkmr/ )に転載したものから。
---
ウェブでは昨日公開。昨日アサブロが調子悪くて今日転載。
---
---
ウェブでは昨日公開。昨日アサブロが調子悪くて今日転載。
---
_ ホットコーナーの舞台裏 - 2008年11月26日 07時42分26秒
ASAHIネット(http://www.asahi-net.or.jp)のjouwa/salonからホットコーナー(http://www.asahi-net.or.jp/~ki4s-nkmr/ )に転載したものから。
---
http://iiyu.asablo.jp/blog/2008/11/26/3975861
Lisp, Prologネタ
の続き。
LIS
---
http://iiyu.asablo.jp/blog/2008/11/26/3975861
Lisp, Prologネタ
の続き。
LIS
_ ホットコーナーの舞台裏 - 2010年03月01日 01時33分04秒
ASAHIネット(http://www.asahi-net.or.jp )のjouwa/salonからホットコーナー(http://www.asahi-net.or.jp/~ki4s-nkmr/ )に転載したものから。
---
http://iiyu.asablo.jp/blog/2010/02/19/4890951
Lispの神様 竹内郁雄教授の最終
---
http://iiyu.asablo.jp/blog/2010/02/19/4890951
Lispの神様 竹内郁雄教授の最終
_ ホットコーナーの舞台裏 - 2010年03月24日 00時29分12秒
ASAHIネット(http://www.asahi-net.or.jp )のjouwa/salonからホットコーナー(http://www.asahi-net.or.jp/~ki4s-nkmr/ )に転載したものから。
---
http://iiyu.asablo.jp/blog/2010/03/14/4947672
Shibuya.lisp テクニカルトーク #5
---
http://iiyu.asablo.jp/blog/2010/03/14/4947672
Shibuya.lisp テクニカルトーク #5
_ ホットコーナーの舞台裏 - 2010年04月28日 06時06分54秒
ASAHIネット(http://www.asahi-net.or.jp )のjouwa/salonからホットコーナー(http://www.asahi-net.or.jp/~ki4s-nkmr/ )に転載したものから。
---
忙しくて、眠くて、書く時間がないが、これだけは。
これ
---
忙しくて、眠くて、書く時間がないが、これだけは。
これ
_ ホットコーナーの舞台裏 - 2010年05月06日 09時15分50秒
ASAHIネット(http://asahi-net.jp )のjouwa/salonからホットコーナー(http://www.asahi-net.or.jp/~ki4s-nkmr/ )に転載したものから。
---
アメリカは、さすがにAI(人工知能)本が出続けていますね。こういう
---
アメリカは、さすがにAI(人工知能)本が出続けていますね。こういう
_ ホットコーナーの舞台裏 - 2010年10月10日 01時18分23秒
ASAHIネット(http://asahi-net.jp )のjouwa/salonからホットコーナー(http://www.asahi-net.or.jp/~ki4s-nkmr/ )に転載したものから。
---
ハイパーリアリスティックなピンボールゲームで、世界から絶賛さ
---
ハイパーリアリスティックなピンボールゲームで、世界から絶賛さ
_ ホットコーナーの舞台裏 - 2011年02月03日 06時05分18秒
ASAHIネット(http://asahi-net.jp )のjouwa/salonからホットコーナー(http://www.asahi-net.or.jp/~ki4s-nkmr/ )に転載したものから。
---
http://iiyu.asablo.jp/blog/2011/02/02/5659367
NHKスペシャル「私たちは核兵器を作
---
http://iiyu.asablo.jp/blog/2011/02/02/5659367
NHKスペシャル「私たちは核兵器を作
_ ホットコーナーの舞台裏 - 2011年03月04日 05時13分44秒
ASAHIネット(http://asahi-net.jp )のjouwa/salonからホットコーナー(http://www.asahi-net.or.jp/~ki4s-nkmr/ )に転載したものから。
---
1週間1言語で、7週間で7つのプログラミング言語のエッセンス
---
1週間1言語で、7週間で7つのプログラミング言語のエッセンス
_ ホットコーナーの舞台裏 - 2012年02月17日 06時29分48秒
ASAHIネット(http://asahi-net.jp )のjouwa/salonからホットコーナー(http://www.asahi-net.or.jp/~ki4s-nkmr/ )に転載したものから。
---
タイトル長くなりすぎたなあ。まあ、よい。
2011/02/13の月曜日に
---
タイトル長くなりすぎたなあ。まあ、よい。
2011/02/13の月曜日に
_ ホットコーナーの舞台裏 - 2013年07月11日 09時40分09秒
ASAHIネット(http://asahi-net.jp )のjouwa/salonからホットコーナー(http://www.asahi-net.or.jp/~ki4s-nkmr/ )に転載したものから。
---
ErlangのVM上に作られた、こんなプログラミング言語があるんですね。
---
ErlangのVM上に作られた、こんなプログラミング言語があるんですね。
_ ホットコーナーの舞台裏 - 2014年05月22日 10時22分28秒
ASAHIネット(http://asahi-net.jp )のjouwa/salonからホットコーナー(http://www.asahi-net.or.jp/~ki4s-nkmr/ )に転載したものから。
---
このブログ、だいぶ前にメモしていたが、メモを発見したので紹介
---
このブログ、だいぶ前にメモしていたが、メモを発見したので紹介
_ ホットコーナーの舞台裏 - 2014年05月22日 10時22分30秒
ASAHIネット(http://asahi-net.jp )のjouwa/salonからホットコーナー(http://www.asahi-net.or.jp/~ki4s-nkmr/ )に転載したものから。
---
このブログ、だいぶ前にメモしていたが、メモを発見したので紹介
---
このブログ、だいぶ前にメモしていたが、メモを発見したので紹介
_ ホットコーナーの舞台裏 - 2014年07月10日 11時04分42秒
ASAHIネット(http://asahi-net.jp )のjouwa/salonからホットコーナー(http://www.asahi-net.or.jp/~ki4s-nkmr/ )に転載したものから。
---
オーム社、がんばってくれてるよね。鹿野さんたち。
http://www.amazon.
---
オーム社、がんばってくれてるよね。鹿野さんたち。
http://www.amazon.
_ ホットコーナーの舞台裏 - 2014年07月28日 10時45分44秒
ASAHIネット(http://asahi-net.jp )のjouwa/salonからホットコーナー(http://www.asahi-net.or.jp/~ki4s-nkmr/ )に転載したものから。
---
6月に、九大(九州大学)に講義に行ったとき、中洲産業大学で厳粛に
---
6月に、九大(九州大学)に講義に行ったとき、中洲産業大学で厳粛に
_ ホットコーナーの舞台裏 - 2014年07月29日 09時55分01秒
ASAHIネット(http://asahi-net.jp )のjouwa/salonからホットコーナー(http://www.asahi-net.or.jp/~ki4s-nkmr/ )に転載したものから。
---
http://iiyu.asablo.jp/blog/2014/07/28/7400231
ドコモは、Prologで動いている\(^O^)
---
http://iiyu.asablo.jp/blog/2014/07/28/7400231
ドコモは、Prologで動いている\(^O^)
_ ホットコーナーの舞台裏 - 2014年08月28日 11時05分47秒
ASAHIネット(http://asahi-net.jp )のjouwa/salonからホットコーナー(http://www.asahi-net.or.jp/~ki4s-nkmr/ )に転載したものから。
---
http://iiyu.asablo.jp/blog/2014/07/29/7400910
IBMのワトソン(Watson)も、Prologで動い
---
http://iiyu.asablo.jp/blog/2014/07/29/7400910
IBMのワトソン(Watson)も、Prologで動い
_ ホットコーナーの舞台裏 - 2014年09月10日 10時09分18秒
ASAHIネット(http://asahi-net.jp )のjouwa/salonからホットコーナー(http://www.asahi-net.or.jp/~ki4s-nkmr/ )に転載したものから。
---
オライリー・ジャパンの矢野さん。献本、ありがとうございました
---
オライリー・ジャパンの矢野さん。献本、ありがとうございました
_ ホットコーナーの舞台裏 - 2015年02月10日 11時00分03秒
ASAHIネット(http://asahi-net.jp )のjouwa/salonからホットコーナー(http://www.asahi-net.or.jp/~ki4s-nkmr/ )に転載したものから。
---
やっぱ、こういう会社、日本にもあるんですね。
http://itpro.nikkeibp.co
---
やっぱ、こういう会社、日本にもあるんですね。
http://itpro.nikkeibp.co
_ ホットコーナーの舞台裏 - 2015年05月14日 10時24分46秒
ASAHIネット(http://asahi-net.jp )のjouwa/salonからホットコーナー(http://www.asahi-net.or.jp/~ki4s-nkmr/ )に転載したものから。
---
Scalaを使った関数型プログラミングの本、新刊が2冊ありますね。
---
Scalaを使った関数型プログラミングの本、新刊が2冊ありますね。
_ ホットコーナー - 2017年09月13日 09時25分06秒
ASAHIネット(http://asahi-net.jp )のjouwa/salonから。
---
「Reactビギナーズガイド」のお買い上げがあって、JavaScriptのReact(いろんなReactがあるので、ReactJSと書くことにする)関係、そして、Reacti
---
「Reactビギナーズガイド」のお買い上げがあって、JavaScriptのReact(いろんなReactがあるので、ReactJSと書くことにする)関係、そして、Reacti
_ ホットコーナー - 2018年02月17日 00時45分28秒
ASAHIネット(http://asahi-net.jp )のjouwa/salonから。
---
最近、翔泳社の本ばかり紹介しているような気がする。完全に回し者。\(^O^)/
いま、翔泳社祭2018をやっていて、電子書籍が半額
---
最近、翔泳社の本ばかり紹介しているような気がする。完全に回し者。\(^O^)/
いま、翔泳社祭2018をやっていて、電子書籍が半額
_ ホットコーナー - 2019年10月07日 01時14分00秒
ASAHIネット(http://asahi-net.jp )のブログサービス、アサブロ(https://asahi-net.jp/asablo/ )を使っています。
---
https://t.co/6WfkZHWInw?amp=1
人気のプログラミング言語「Python」、学べば年収アップも可
---
https://t.co/6WfkZHWInw?amp=1
人気のプログラミング言語「Python」、学べば年収アップも可
_ ホットコーナー - 2021年03月27日 03時18分00秒
ASAHIネット(http://asahi-net.jp )のブログサービス、アサブロ(https://asahi-net.jp/asablo/ )を使っています。
---
ぼくがちょくちょく本を買うManningは、今日は何の日?をやっている。3月15日に、
---
ぼくがちょくちょく本を買うManningは、今日は何の日?をやっている。3月15日に、
Links for Java Prolog
http://kaminari.istc.kobe-u.ac.jp/logic/jprolog.html
というリンク集をご参照いただくのがよろしいかと存じます。
それから余談ですが、小生も、
初級Prolog講座
http://tutorial.jp/prog/
というPrologのチュートリアルを書いております。拙いものですが、もしも今後、Prologについてお書きになる機会がございましたら、拙文もついでにご紹介いただけますと光栄の極みに存じます。