Lisp Scheme Part41 (855レス)
1-

151
(1): はちみつ餃子 ◆8X2XSCHEME 2020/02/22(土)12:07 ID:5jIrjfcF(1) AAS
事実を列挙すれば解を求める処理をやってくれるってのは理想のひとつではあるよな。

実際にはには Prolog が答えを出すメカニズムを理解していないと
答えを (効率的に) 出しやすい事実を上手く与えられない場合もあるし、現実は厳しい……。
152
(1): 2020/02/22(土)21:37 ID:dEZr6bBq(3/3) AAS
思うんだけどLispというと悟りとか、ゲーデル云々みたいな話がよく言われるけど
Prologではあんまり関連付けて言われないですよね
153: 2020/02/29(土)16:53 ID:RQUlgixi(1) AAS
上にもあるけどprologは論理がそのままプログラムになるっていわれてんだろ
似たようなもん
154: 2020/03/03(火)08:38 ID:VyHc4g1O(1) AAS
hy面白いけどlisperにはrubyの方が人気なんだ
155: 2020/03/03(火)12:21 ID:t7WQy2vJ(1) AAS
んなこたーない
156
(1): 2020/03/03(火)18:09 ID:wrUSgHR4(1) AAS
>>152
> Prologではあんまり関連付けて言われないですよね

Prologは「論理プログラミング言語」と呼ばれたりするけれど書かれたプログラムを実行可能にするためのプログラミング言語であるために
論理のための言語(つまり論理式を記述するための言語)とはかなり違ってしまっているからね

その典型がPrologで動くプログラムを書く上で不可欠なカット “!” ね
あれは本来の論理には対応物がなく論理とは全く縁のないコンストラクトだが
カットを使わなければほとんどのPrologプログラムはまともに動かなくなってしまうだろう

その点、Schemeから命令的な言語コンストラクトおよび標準手続きであるset!とset-car!, set-cdr!を除いた部分は
弱い(weak, つまりλ抽象の本体式中のβ-簡約基(redex)は簡約せずに放置しておく)
作用的順序(applicative order)の評価戦略(reduction strategy)のλ計算そのものだ

call-ccは継続(continuation)というメタな(つまり意味論上の)値を対象レベルに持ち込むmeta-circular的な拡張であり
Schemeに限らずLisp一般で広く採用されているS-式という構文は自分の構文に対する抽象構文の表現になっているから
プログラムが自分自身(や同じ言語で書かれた他のプログラム)のソースコードを記述している言語を対象言語として
自分自身がそれを素直な形で操作できるメタ言語レベルの存在として振る舞えることになるからね

言い換えればS-式という表現形式のために括弧をやたらと多用させられるLisp言語では
ソースコードをその抽象構文(木構造)と同型な形で記述させていると言っても良い

だからLispのプログラムをLispで処理する場合には、C等のような普通のプログラミング言語で書かれたプログラムを処理する場合には
不可欠な字句解析や構文解析が実質上は不要なんだよ

何故ならば処理する側のLispプログラムにとって処理される側のLispコードは最初から抽象構文木と1:1対応する形式で提供される訳だから

正にゲーデルの不完全性定理で行っている形式化された論理のゲーデル数による表現とそれを原始再帰的函数や同述語を含むメタ論理のレベルで
処理する構造が、Lispの世界に対応していると言えるわけですよ
157
(2): 2020/03/03(火)18:41 ID:2IitENiP(1) AAS
3文字で頼む
158: 2020/03/03(火)19:41 ID:nd3HjawW(1) AAS
マクロ
159
(1): 2020/03/03(火)20:29 ID:44YhJRv6(1) AAS
要するにPrologはメタ論理レベルのプログラミングが出来ないってこと?
160: 2020/03/03(火)21:31 ID:s8qGwiQH(1) AAS
>>157
ボイド
161: 2020/03/03(火)21:44 ID:JAknlLuJ(1) AAS
>>157
GEB
162: 2020/03/04(水)12:43 ID:XYd2gLmT(1) AAS
CDR!!
163: 2020/03/04(水)12:50 ID:ujdXlrHA(1) AAS
SECD
Landin’s J
164: 2020/03/05(木)20:29 ID:h922Dn8C(1/11) AAS
>>50
需要の問題だろ
Lisp自体がマイナーで
Common Lispでやっと本が出せる位なのに
165: 2020/03/05(木)20:29 ID:h922Dn8C(2/11) AAS
>>53
今はAIといえばPythonだろ?
166: 2020/03/05(木)20:30 ID:h922Dn8C(3/11) AAS
>>54
昔の一時期は妥当だったんだろうけど
今ならPythonの方が向いてるだろう
167: 2020/03/05(木)20:32 ID:h922Dn8C(4/11) AAS
>>57
>>58
要は人工知能というより記号処理なんだよ
168: 2020/03/05(木)20:34 ID:h922Dn8C(5/11) AAS
>>82
>>84
MITの件もあるし
今ならPythonでいいでしょ

MITレベルの頭ならLispなんて
すぐ読み書きできると思うが
169: 2020/03/05(木)20:39 ID:h922Dn8C(6/11) AAS
>>146
>論理プログラム言語(Prolog)なんて
ほとんどのプログラマが
仕事では一生使わないだろうな?
でも設計をする上で参考になる
170: 2020/03/05(木)20:41 ID:h922Dn8C(7/11) AAS
>>149
Prologの勉強は無駄ではないと思うが
すぐ成果には結びつかないだろうね?

でも長期的には流行りの言語やFWに飛びつくより
地力につながる可能性もあるだろう
171: 2020/03/05(木)20:42 ID:h922Dn8C(8/11) AAS
>>150
宣言型という点では近いけど言語としては同じじゃない
ユニフィケーションやバックトラックの挙動があるから
172: 2020/03/05(木)20:44 ID:h922Dn8C(9/11) AAS
>>151
AIはディープラーニングが主流になったが
それはそれとしてアレでPrologがもう少し
分かりやすければ日常的に使うんだけどな
これどうやって書くんだってのが多すぎる
173: 2020/03/05(木)20:47 ID:h922Dn8C(10/11) AAS
>>156
Lispはメタプログラミングしやすいって理屈は分かるが
実際にそれでものすごい作業効率が上がるかは疑問だな?

なぜんあらメジャーな言語はライブラリが充実してて
それ使えば最初から書かなくても済むわけだから早い
174: 2020/03/05(木)20:48 ID:h922Dn8C(11/11) AAS
>>159
本当にできるかできないかは知らんが
そういえばメタプロやってるって
声ほとんど聞いたことないな
Lisp勢はマクロマクロうるさいのに
175: 2020/03/05(木)23:31 ID:ilhNvGHV(1) AAS
3文字で頼む
176: 2020/03/06(金)05:04 ID:nWpA6pnf(1) AAS
スレチ
177: 2020/03/10(火)18:23 ID:BcZoFSIR(1) AAS
hy
マクロの入力にpair入れたのに
マクロ実行時にunquoteするとlistに化けるバグがある気がする
178: 2020/03/26(木)18:40 ID:jDMenf5s(1) AAS
日本の理系人のLisp好きは異常
179: 2020/03/26(木)21:06 ID:x3TTE31H(1) AAS
土日はおとなしくLispでも
180
(2): 2020/04/24(金)18:37 ID:3QH+ANBn(1) AAS
Clozure CL 1.12 がでてきた。
外部リンク[12]:github.com

ぜんぜん 1.11 からバージョンあがらないから死んじゃったのかと思ったよ。
1-
あと 675 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ

ぬこの手 ぬこTOP 0.020s