Common Lisp、SchemeをはじめとするLisp族全般のスレです
■前スレ
Lisp Scheme Part40
http://mevius.5ch.net/test/read.cgi/tech/1426481152/
■テンプレ
ttp://wiki.fdiary.net/lisp/
■関連スレ
【Lisp】プログラミング言語 Clojure #4【JVM】 [無断転載禁止]©2ch.net
http://mevius.5ch.net/test/read.cgi/tech/1483498849/
【GNU】スクリプト言語 Guile【scheme】
http://mevius.5ch.net/test/read.cgi/tech/1239985829/
【入門】Common Lisp その11【質問よろず】
http://peace.2ch.net/test/read.cgi/tech/1411307361/
【Scheme】Schemeインタプリタ Mosh Part1【Lisp】
http://peace.2ch.net/test/read.cgi/tech/1272469779/
【魔法】リリカル☆Lisp【言語】
http://peace.2ch.net/test/read.cgi/tech/1183396621/
Lisp@UNIX版
http://mevius.5ch.net/test/read.cgi/unix/1019926525/
探検
Lisp Scheme Part41
2018/07/15(日) 02:05:28.62ID:oGr67yTf
880デフォルトの名無しさん
2025/10/23(木) 18:54:52.20ID:SeuJXbyZ (setq ls (delete 'foo ls))
みたいなイディオムがあるように、リストの先頭を削除したり追加したりするにはその「外側」での対応が必要になる
Lisperなら当然知ってる事だがな
(alist-get 'a ls)でlsを受け取ったalist-getが幾ら先頭に(key . value)を追加したって意味が無い(途中になら可能)
lsを保持している外側での対応が必要になる
alist-getが2つ目の引数だって事が分かってるけどsetf側はそんな事知らないので教える必要がある
その辺がsetfがget-setf-expansionを介した2段構えになってる理由だな
みたいなイディオムがあるように、リストの先頭を削除したり追加したりするにはその「外側」での対応が必要になる
Lisperなら当然知ってる事だがな
(alist-get 'a ls)でlsを受け取ったalist-getが幾ら先頭に(key . value)を追加したって意味が無い(途中になら可能)
lsを保持している外側での対応が必要になる
alist-getが2つ目の引数だって事が分かってるけどsetf側はそんな事知らないので教える必要がある
その辺がsetfがget-setf-expansionを介した2段構えになってる理由だな
881デフォルトの名無しさん
2025/10/24(金) 03:28:33.12ID:SZTuSSg3 そもそもエアプは黙ってろって連呼してるやつって >>859 なの?
ハッシュテーブル使うならLispである必要がないとかいう原理主義者がsetfの話してるのもアンバランスでバカみたい
ハッシュテーブル使うならLispである必要がないとかいう原理主義者がsetfの話してるのもアンバランスでバカみたい
882デフォルトの名無しさん
2025/10/24(金) 17:02:06.19ID:gEuKQCol >>881
elispにはarefの対にasetがあって、そっちの方が記述がシンプルになるしsetfを使う意味がほとんどない
(aset ary 1 3)対(setf (aref ary 1) 3)とか
(set 'hoge 3)対(setf (symbol-value 'hoge) 3)
があったら普通は前者の方を書くだろう
ハッシュテーブルや配列だけならsetfは不要だ
でも、汎変数というかplaceというかsetfは(push 3 (alist-get 'c als))のようにリストに使うと効果絶大だ
先に書いたように(push 3 (alist-get 'c als))はシンプルで直感的な記述ながら実に多くの事をやっている
どの辺がアンバランスなんだ?
elispにはarefの対にasetがあって、そっちの方が記述がシンプルになるしsetfを使う意味がほとんどない
(aset ary 1 3)対(setf (aref ary 1) 3)とか
(set 'hoge 3)対(setf (symbol-value 'hoge) 3)
があったら普通は前者の方を書くだろう
ハッシュテーブルや配列だけならsetfは不要だ
でも、汎変数というかplaceというかsetfは(push 3 (alist-get 'c als))のようにリストに使うと効果絶大だ
先に書いたように(push 3 (alist-get 'c als))はシンプルで直感的な記述ながら実に多くの事をやっている
どの辺がアンバランスなんだ?
883デフォルトの名無しさん
2025/10/26(日) 23:35:32.26ID:SlBkv4G6 ハッシュテーブル使うならLispである必要がないというのはどう解釈してもお馬鹿
setfの役割は左辺値+オブザーバーだがalist-getの件はリストをkv構造で使う際のリストの構造上の欠陥をオブザーバー部が補ってるだけだから例として挙げるような優れたデザインでもなんでもない
ハッシュテーブルならそもそもこの問題がないからリストに使うと効果絶大というのもお馬鹿の勘違い
なんでもリストで処理しようとするのは昭和で終った
setfの役割は左辺値+オブザーバーだがalist-getの件はリストをkv構造で使う際のリストの構造上の欠陥をオブザーバー部が補ってるだけだから例として挙げるような優れたデザインでもなんでもない
ハッシュテーブルならそもそもこの問題がないからリストに使うと効果絶大というのもお馬鹿の勘違い
なんでもリストで処理しようとするのは昭和で終った
884デフォルトの名無しさん
2025/10/26(日) 23:50:13.43ID:RMl0wgM+ >>883
だからエアプ言われんだよw
Lispのリストほど便利なものはない
Lispのリストと言ってるのはコンスセルを使ったものを指している
他の言語では無い
もちろんその言語で実装する事は可能だが、Lispの様に構文レベルで対応してる言語には遠く及ばない
敢えて否定したいなら、効率が悪いという事のみ
これも動的型言語として使うならどうでも良い話だ
だからエアプ言われんだよw
Lispのリストほど便利なものはない
Lispのリストと言ってるのはコンスセルを使ったものを指している
他の言語では無い
もちろんその言語で実装する事は可能だが、Lispの様に構文レベルで対応してる言語には遠く及ばない
敢えて否定したいなら、効率が悪いという事のみ
これも動的型言語として使うならどうでも良い話だ
885デフォルトの名無しさん
2025/10/27(月) 00:01:04.96ID:W99ASBpj >>883
> setfの役割は左辺値+オブザーバーだがalist-getの件はリストをkv構造で使う際のリストの構造上の欠陥をオブザーバー部が補ってるだけだから例として挙げるような優れたデザインでもなんでもない
↑
俺の説明を聞いてから一生懸命否定しようとしたんだなw
そもそもなんだ?オブザーバーって?
デザインパターンのオブザーバーの事なら全然違う
マクロのトリックなんだよ
マクロ使ったテクニックをオブザーバーいう馬鹿は初めて見たw
> setfの役割は左辺値+オブザーバーだがalist-getの件はリストをkv構造で使う際のリストの構造上の欠陥をオブザーバー部が補ってるだけだから例として挙げるような優れたデザインでもなんでもない
↑
俺の説明を聞いてから一生懸命否定しようとしたんだなw
そもそもなんだ?オブザーバーって?
デザインパターンのオブザーバーの事なら全然違う
マクロのトリックなんだよ
マクロ使ったテクニックをオブザーバーいう馬鹿は初めて見たw
886デフォルトの名無しさん
2025/10/28(火) 04:53:26.98ID:FzLqQH8v なんだ、結局反論できなくなったのか? 「お馬鹿」だの「昭和で終った」だの散々イキってたのに、だんまりか?w
「オブザーバー(笑)」だの「リストの構造上の欠陥(笑)」だの、それっぽい文学的ポエムを並べてたが、こっちが「それ、ただのマクロのトリックだぞ」って事実を指摘したら逃げ出すとか、ダサすぎだろ。 マクロ使ったテクニックをオブザーバーとか言い出す馬鹿は初めて見たわw
結局、お前ら「エアプ」には、 (push 3 (alist-get 'c als)) の凄さが微塵も理解できなかったな。 get-setf-expansionがどう動くか、なんで「外側」の変数(als)を書き換えられるのか、俺がわざわざヒントまで出してやったのに、エアプが返してきたのは「よきにはからって(キリッ)」だもんな。文系かよw
で、苦し紛れに言い出したのが「ハッシュテーブルなら問題ない」。 だから、「ハッシュテーブル使うならLispである必要がない」と何度言えば分かるんだ? Lispのリスト(コンスセル)が他の言語に無い、どれだけ便利なものか、全く分かってない。 効率が悪い? そんなもんは動的型言語なんだから「どうでも良い話だ」と結論出てるだろ。
エアプは、alist-getの議論から「ハッシュテーブル」っていう全く別次元の話に逃げただけ。 俺が「リストに使うと効果絶大だ」と言った意味が、最後まで理解できなかった時点でお前らの負けだよ。 まぁ、Lisperなら当然知ってるイディオムすら知らなそうなエアプには、alist-getの真価なんて分かるわけもなかったかw
エアプは黙ってろ。議論にすらならんかったな。
「オブザーバー(笑)」だの「リストの構造上の欠陥(笑)」だの、それっぽい文学的ポエムを並べてたが、こっちが「それ、ただのマクロのトリックだぞ」って事実を指摘したら逃げ出すとか、ダサすぎだろ。 マクロ使ったテクニックをオブザーバーとか言い出す馬鹿は初めて見たわw
結局、お前ら「エアプ」には、 (push 3 (alist-get 'c als)) の凄さが微塵も理解できなかったな。 get-setf-expansionがどう動くか、なんで「外側」の変数(als)を書き換えられるのか、俺がわざわざヒントまで出してやったのに、エアプが返してきたのは「よきにはからって(キリッ)」だもんな。文系かよw
で、苦し紛れに言い出したのが「ハッシュテーブルなら問題ない」。 だから、「ハッシュテーブル使うならLispである必要がない」と何度言えば分かるんだ? Lispのリスト(コンスセル)が他の言語に無い、どれだけ便利なものか、全く分かってない。 効率が悪い? そんなもんは動的型言語なんだから「どうでも良い話だ」と結論出てるだろ。
エアプは、alist-getの議論から「ハッシュテーブル」っていう全く別次元の話に逃げただけ。 俺が「リストに使うと効果絶大だ」と言った意味が、最後まで理解できなかった時点でお前らの負けだよ。 まぁ、Lisperなら当然知ってるイディオムすら知らなそうなエアプには、alist-getの真価なんて分かるわけもなかったかw
エアプは黙ってろ。議論にすらならんかったな。
887デフォルトの名無しさん
2025/10/28(火) 05:32:08.58ID:FzLqQH8v つーか、ハッシュテーブルとか言ってる奴。お前マジでLispやめろ。 Lispの魂はコンスセル(cons)なんだよ。わかる? alist こそがLispの「コード=データ」を体現する至高のデータ構造。 ハッシュテーブル(笑)なんてPythonでも使ってろ。Lispである必要がゼロ。
setf ってのは、その cons でできたリスト宇宙(笑)を自在に書き換えるための「神のマクロ」なんだよ。 880で説明した「外側」の書き換えとか、get-setf-expansion の凄さが、お前らエアプには理解不能だっただけ。 nil を自動で (key . value) に変異させるこのマクロ・トリックこそがLispの真髄なのに、それを「構造上の欠陥」(883)とか言っちゃうセンスの無さ。
もういいわ。話にならん。 マクロが何かもわかってない文系エアプに何を言っても無駄。 俺が「本物のLisp」を教えてやったのに、誰もついてこれなかったな。
setf ってのは、その cons でできたリスト宇宙(笑)を自在に書き換えるための「神のマクロ」なんだよ。 880で説明した「外側」の書き換えとか、get-setf-expansion の凄さが、お前らエアプには理解不能だっただけ。 nil を自動で (key . value) に変異させるこのマクロ・トリックこそがLispの真髄なのに、それを「構造上の欠陥」(883)とか言っちゃうセンスの無さ。
もういいわ。話にならん。 マクロが何かもわかってない文系エアプに何を言っても無駄。 俺が「本物のLisp」を教えてやったのに、誰もついてこれなかったな。
888デフォルトの名無しさん
2025/10/28(火) 07:59:27.60ID:/Gs2akef Lispって無限リストとか作れるの?
それ何に使うの?
それなしじゃ書けないものあるの?
C言語にはそんなものないけどなんでも書けるよ?
それ何に使うの?
それなしじゃ書けないものあるの?
C言語にはそんなものないけどなんでも書けるよ?
889暗黒神・豊田聡志
2025/10/28(火) 16:33:24.90ID:rzZnX+yP 船井幸雄・著「今ひとに聞かせてい神さまの言葉」に書いてある。
かつえとの子作りセックスの為に最後の最後には、国連は上君田に土下座しに来ると書いてあるぞ。
必死になって国連は、土下座すると書いてあるぞwwww
余生は、かつえとの子作りセックスの話しを断り続けて、マクロスのプラモ三昧の生活だなwww
かつえとの子作りセックスで出来た「てんしさま」が居なければ戦争になると、船井幸雄が本に書いてあるぞwww
かつえの閉経はいつだ?
かつえの子宮頸がんのステージはいくつだ
宇宙戦争の開戦はいつだwww
勝沼かつえは、子供産める身体なのか???
かつえとの子作りセックスの為に最後の最後には、国連は上君田に土下座しに来ると書いてあるぞ。
必死になって国連は、土下座すると書いてあるぞwwww
余生は、かつえとの子作りセックスの話しを断り続けて、マクロスのプラモ三昧の生活だなwww
かつえとの子作りセックスで出来た「てんしさま」が居なければ戦争になると、船井幸雄が本に書いてあるぞwww
かつえの閉経はいつだ?
かつえの子宮頸がんのステージはいくつだ
宇宙戦争の開戦はいつだwww
勝沼かつえは、子供産める身体なのか???
890デフォルトの名無しさん
2025/11/11(火) 18:56:41.38ID:IMC7CS1x 80年代のsicpでさえデータ型を定義することを推奨してるのだから
リスト以外を使ったらlispの意味がないとかぬかすのは愚の骨頂ですわ
リスト以外を使ったらlispの意味がないとかぬかすのは愚の骨頂ですわ
891デフォルトの名無しさん
2025/11/16(日) 16:16:40.82ID:JUX/KH1x ファンタジーコンソールのtic80がこっそりschemeに対応してるんだけど
これゲームを題材にしてscheme手習いしたいって人にはめっちゃ良いんじゃない
これゲームを題材にしてscheme手習いしたいって人にはめっちゃ良いんじゃない
892デフォルトの名無しさん
2025/11/18(火) 07:50:44.27ID:7woWQLhR 手習いしたい?だからエアプ言われんだよw
893デフォルトの名無しさん
2025/11/18(火) 17:29:51.35ID:d9hs+rsN ?
手習いすればエアプじゃないじゃん
手習いすればエアプじゃないじゃん
894はちみつ餃子 ◆8X2XSCHEME
2025/11/18(火) 17:52:24.61ID:saOGypzbレスを投稿する
ニュース
- 立憲・野田代表が主張 台湾有事答弁で「質問者批判は筋違い」「答弁がおかしい」「高市総理迎合のネット世論は危険」★2 [♪♪♪★]
- 戦略的互恵関係望むなら答弁撤回せよと中国 [どどん★]
- 【速報】 植田日銀総裁 「円安進行が物価高を起こしている」 ★2 [お断り★]
- 「ふざけんな!」 国会議員給与、『月5万円増』報道にネット騒然 「国民が物価高で困っているのに」「定数削減とか言いながら…」 [♪♪♪★]
- 【無言】中国怒らせた高市首相→1週間だんまり、国民に実害も説明なし 中国問題を避けてスルー… ★11 [BFU★]
- 【野球】大谷翔平が来春のWBC出場に意欲 ドジャースは「打者専念」の条件付きで容認か [征夷大将軍★]
- 【悲報】高市答弁、誤解だった [834922174]
- 戦略的互恵関係望むなら答弁撤回せよと中国。高市、もう後がなくなる [805596214]
- 架空を滑空ビューーーン👊😅👊三三☁😶‍🌫🏡
- 自衛隊地本「はい、新宿徴兵センターです!」⇐高市政権が続けばガチでこうなるんだぞ? [731544683]
- 【鈴木早苗】お米券おひとり様3000円に閣議決定 [993451824]
- 【悲報】日本、中国に対して切れるカードが1枚もないことが発覚… 中国にボロクソ言われても高市さんは黙り込むしかなかった [271912485]
