「PrologでまったりPart 2」は良スレ
|
2007/04/01(日) 03:21:08
|
風邪引いて熱で頭がまわらなくてボケーッとウェブ見てたら,なかなかの良スレとコメントを発見したのでメモ
PrologでまったりPart 2
358 :デフォルトの名無しさん :2006/01/12(木) 11:07:44 >>329 LISP系などはすこし近いと思うのですが、 言語観が他のプログラム言語と少し違う気がする。 身長(尾崎,168). は、Prologプログラマにとって大事なプログラムであり、 このようなプログラムを自らの環境にできるだけたくさん、 永続的に維持したい願う。ひとかけら、ひとかけらが 独立した貴重なプログラムという感覚。 この部分が一番の違いであり、特徴といってもいいのではないか。
Prolog は不完全 (例えば,手続き的な制御構造を素直に表現できない) であるものの,これはルール型のプログラミング言語に独特の感覚なのではないかと思います.そして,仕様からのルール生成,ルールコンポーネントのプログラム合成の分野において Prolog が強い最大の要因なのかも.Prolog 自体は終わった言語でも,その精神にはまだまだ見習うべきところは多いはず (逆に言うと,LISP や Prolog 自体の価値よりも,それらを通して生まれた概念や思想,技術を整理して体系化し,一部のエキスパートだけではなく誰でも使えるようにしていく,ということこそが重要であり,今後求められてくるところだと思う).
286 :デフォルトの名無しさん :2005/09/04(日) 19:09:43 >>284 もっとも「前向き」な回答を一つ。 プログラマの水準が上がったということがあると思います。 そんな馬鹿なというなかれ。現在では、 たとえば、C++のプログラマで Prologくらいの機能ならば「必要ならばいつでも書ける」と 思っているプログラマは結構多いのではないでしょうか。 20年前だとNearlyZeroですね。この差は大きい。 そこまでの自信があれば、Prologに特化しておく必要は ないですね。
287 :デフォルトの名無しさん :2005/09/05(月) 13:13:32 >>286 ここ十年に限っていえばWindows向きの作りに なっていないということでしょうね。 WindowsマシンのデスクトップにTeraTermが 標準で載っていれば少しは違ったかも知れません。
288 :デフォルトの名無しさん :2005/09/05(月) 18:59:41 >286 どうなんでしょう? ある面、能力的に低下している部分は ないのでしょうか? つまり、ロジックにおける細密さです。 GUIやDB操作、WEB系の技術にかまけて 情報そのものの付加価値再構成にうとく なっていることはないんでしょうか? 表象系(REPRESENTATION)にしか目が 向かない、地味なロジック系がないが しろになっているようなことは? > 私がPrologを学び始めた20年ちょっと前、古川康一、黒川利明、高木茂行、 > 中島秀之、溝口文雄氏といった錚々たる方々からPrologの手ほどきを > 受けました。 我々の世代は、既に先生達の世代を凌駕しちゃったんでしょうかねぇ? その論理性において、その思想性において。
289 :デフォルトの名無しさん :2005/09/05(月) 19:58:21 >>288 C++でユニフィケーションがいつでも書けることと 論理プログラミングに精通しているとは関係が ありませんね。Prologを5年も粘っていれば 誰でも論理式が日常的なものになりますが、 どんなに優秀なC++のプログラマでも論理式は 別物です。 データモデルの構築などという領域では C++やRuby、Pythonといった言語のプログラマには 想像もつかない奥行きがPrologにはあります。 安定したレベルでの環境に身を置かないとわからない こともあるのでそういう意味で>>286は不完全で 一方的な見解ということになるでしょう。
ウェブ上を眺めていても,Prolog 系に言及しているブログなどは皆無.また,触れていたとしても,その根底に流れる精神までを理解しているような記事はほとんど無いような.当時の名残,というかが残っているこのスレはけっこう貴重だと思います.某自称プログラミング言語オタクの R なんとか言語の作者までもが,(純粋に疎い方面だったというだけで,他意は無いのでしょうが) バサッと Open Source Magazine と @IT の記事でプログラミング言語の発展の樹形図から無視する始末だし (まぁ,あの図自体が略し過ぎて微妙過ぎるから,しかたないんだけど… いちおう,教科書的な説明では 4 つのパラダイムの一つとして必ず出てくるようなところだろうに.Prolog が他の言語に与えた影響は無視できないと思うし).
いちおう過去ログも取っておこう.
PrologでまったりPart 2 1 - 713 (2007/04/01 現在)
|
メモ|TB:0|CM:6|
|

▲
|
|
|
コメント
|
気持ちはわかるが、あの樹にはPascalすらなかったので Prologが無視されるのもむべなるかなという気がしないでも。 確かにパラダイムとしてはPascalには強烈なオリジナリティはないので その方面で主張されると。うにゃー。なのですが。
> Prolog 自体は終わった言語でも,その精神にはまだまだ見習うべきところは多いはず > (逆に言うと,LISP や Prolog 自体の価値よりも,(ry) 今後求められてくるところだと思う).
んと、ほかの言語を使ってたとえるとAlgolみたいなものということかな? あ、AlgolもPrologもアメリカよりもヨーロッパで使われる傾向があったということでは 共通点が?
ああ、Prolog入門しようと思ってまだぜんぜん手をつけてないや。
年度も改まったところで入門記事をぜ(ry #自粛したらしい |
|
きむら(K) #grGQ8zlQ|2007/04/01(日) 14:06 [ 編集 ]
|
オリジナリティの観点から言えば,ほとんどは手続き型言語に多少抽象化のための手段の毛が生えたようなもんで,僕から見ればあの図の言語はみんな同じみたいなもんですよ(暴言 w)
あー,僕は ALGOL は全く知らないのですが,あれはトンでもなくたくさんの言語に大きな影響を与えているようですね.Simula や C や Pascal に PL/1, そして Scheme やその他もろもろ,レキシカルなブロック構造を持つ全ての言語に.また,名前呼びなども,後の遅延評価の概念に強い影響を与えてると思いますし.
Prolog は,まぁ,every thing is unification という強烈な癖 (最大の特徴であり,利点であり,欠点) をちょっと体感しておけば良いのでは (笑) 入門記事は,m.hiroi さんの記事が秀逸ですよ. 僕も,大学の自然言語処理の講義で必要になったとき,お世話になりました.
http://www.geocities.jp/m_hiroi/prolog/index.html
処理系は SWI-Prolog で問題無いでしょう.
http://www.swi-prolog.org/
IDE が便利です.
http://lernen.bildung.hessen.de/informatik/swiprolog/indexe.htm
あと,Prolog の技芸はガチ.
個人的には,SICP よりも高度なトピックを扱っていて非常に良いと思います.Prolog の特性上,ウルトラハイレベルなプログラムが,びっくりするぐらいわかりやすくなる,という実例がこれでもかと詰め込まれています (逆に,単純なプログラムは書きにくいのですが…).
個人的には,Prolog よりも意図を汲み取りやすい (実用レベルの) 言語は存在しないとさえ思いますね.他の言語は,Prolog に比べれば,全てエンコードされた暗号です.特に Scheme なんて (ry |
|
あろは #wNX6xxGw|2007/04/01(日) 14:30 [ 編集 ]
|
んーPrologの技芸って絶版でない?(^^; 何ヶ月か前に神保町の古本屋で見かけた記憶もあるので、探してみるけど。 こういうときに大学の図書館とか使えるといいよなあ。 |
|
きむら(K) #grGQ8zlQ|2007/04/02(月) 00:07 [ 編集 ]
|
あらー,きむらさんなら持ってるのかなーと思ったのですが. 確かに,とっくに絶版です.撲も卒論書いてる時に担当教官に借りて読みました. Prolog 関係の良著は,軒並絶版なんですよね.
The Art of Prolog: Advanced Programming Techniques (Logic Programming) ならなんとか w http://www.amazon.co.jp/dp/0262193388
まぁ,どうせ英語ならば,それを買うよりも,
Prolog Programming for Artificial Intelligence (International Computer Science Series) http://www.amazon.co.jp/dp/0201403757 (の第三版がよいらしい)
あるいは,逆に LISP で Prolog を作る
Paradigms of Artificial Intelligence Programming: Case Studies in Common Lisp http://www.amazon.co.jp/dp/1558601910
なども,2ch などで絶賛されているようです.
私は,図書館で日本語の古い Prolog の本を片っ端から読んだ人なので,上の 2 つは読んでないですが.あと,ICOT の知識情報処理シリーズ (?) だったか.ここらへんは軒並古いし,黎明期の本ですが.
制約論理プログラミング ttp://www.amazon.co.jp/dp/4320024699 並列論理型言語GHCとその応用 ttp://www.amazon.co.jp/dp/4320022661 プログラム変換 ttp://www.amazon.co.jp/dp/432002267X
(URL を 5 つ以上入れると,スパム扱いされるらしい)
Prolog 自体はとっくの昔に終わっていながらも,少し前に微妙に流行った CLP (制約論理プログラミング) にせよ,ILP (帰納論理プログラミング) にせよ,けっこう昔のテーマながらも,非常に高度かつ味わい深い領域だと思います.
そういえば,この間,紀伊之國屋で,普通に帰納論理プログラミングが売ってたな… http://www.amazon.co.jp/dp/4320120140
これはけっこう新しいし,トピック的にも面白いところだと思います. |
|
あろは #wNX6xxGw|2007/04/02(月) 00:53 [ 編集 ]
|
> Prolog 系に言及しているブログなどは皆無.また,触れていたとしても,その根底に流れる精神までを理解しているような記事はほとんど無いような.
ご存知かもしれませんが、
ttp://ratiwo.blogspot.com/search/label/computer
にある記事が面白いかもしれません。
差分リストを理解するのに助けになりました。 |
|
田辺 #-|2008/07/03(木) 02:29 [ 編集 ]
|
おお,これは @m0h1can 氏の新しいブログですね.ありがとうございます.
大変素晴らしいブログなので,みんな読むべき! |
|
あろは #wNX6xxGw|2008/07/06(日) 14:41 [ 編集 ]
|
|
|
コメントの投稿
|
|
|
トラックバック
|
トラックバックURLはこちら
http://alohakun.blog7.fc2.com/tb.php/712-3d030b30
|
|
|