Common Lisp、SchemeをはじめとするLisp族全般のスレです
■前スレ
Lisp Scheme Part39
http://peace.2ch.net/test/read.cgi/tech/1408017352/
■テンプレ
ttp://wiki.fdiary.net/lisp/
■関連スレ
【入門】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】プログラミング言語 Clojure #3【JVM】
http://peace.2ch.net/test/read.cgi/tech/1380333808/
【魔法】リリカル☆Lisp【言語】
http://peace.2ch.net/test/read.cgi/tech/1183396621/
探検
Lisp Scheme Part40 [転載禁止]©2ch.net
レス数が1000を超えています。これ以上書き込みはできません。
2015/03/16(月) 13:45:52.92ID:EEYZoZ1i
973デフォルトの名無しさん
2018/07/11(水) 20:14:45.56ID:VhV09Bdv974966
2018/07/11(水) 20:23:44.77ID:7FwajRbN >>972
破壊的な変更には注意が必要なこと自体は、入門書などを読んで知っていたのですが、
今回の例では関数を呼び出す度に別のリストをletが束縛するだろうjkと勝手に思っていました。
勉強になりました。ありがとうございます。
破壊的な変更には注意が必要なこと自体は、入門書などを読んで知っていたのですが、
今回の例では関数を呼び出す度に別のリストをletが束縛するだろうjkと勝手に思っていました。
勉強になりました。ありがとうございます。
975デフォルトの名無しさん
2018/07/11(水) 20:33:50.22ID:Igjhxsb4977966
2018/07/11(水) 21:11:34.91ID:7FwajRbN 自分の環境でSBCLでやってみたら↓みたいになった。
個人的にはLispworksの挙動より意味不明かも。
(hoge-is-foo)はLispworksと同じ結果。
* (test)
0 0 0 0 0 0 0
(0 0 0 0 7 0 6)
* (test)
0 0 0 0 7 0 6
(0 0 0 0 7 0 6)
* (test)
0 0 0 0 7 0 6
(0 0 0 0 7 0 6)
個人的にはLispworksの挙動より意味不明かも。
(hoge-is-foo)はLispworksと同じ結果。
* (test)
0 0 0 0 0 0 0
(0 0 0 0 7 0 6)
* (test)
0 0 0 0 7 0 6
(0 0 0 0 7 0 6)
* (test)
0 0 0 0 7 0 6
(0 0 0 0 7 0 6)
978デフォルトの名無しさん
2018/07/11(水) 21:46:27.14ID:zGhUAGhR リテラルのリストに対する破壊的変更はダメ
っていうのはLand of Lisp(の訳注)で初めて知った
他の本やサイトでこれに関する注意を見た覚えがない
「literal object の変更にあたるから未定義動作になる」(>>969)ということは、リストに限らないんだね
[1]> (defun f () (let ((x "abc")) (format t "~S~%" x) (setf (elt x 0) #\!) x))
F
[2]> (f)
"abc"
"!bc"
[3]> (f)
"!bc"
"!bc"
[4]>
っていうのはLand of Lisp(の訳注)で初めて知った
他の本やサイトでこれに関する注意を見た覚えがない
「literal object の変更にあたるから未定義動作になる」(>>969)ということは、リストに限らないんだね
[1]> (defun f () (let ((x "abc")) (format t "~S~%" x) (setf (elt x 0) #\!) x))
F
[2]> (f)
"abc"
"!bc"
[3]> (f)
"!bc"
"!bc"
[4]>
979デフォルトの名無しさん
2018/07/11(水) 22:50:38.31ID:nrnWofQI CLHSで "The consequences are undefined if literal objects are destructively modified." って書いてあるページ
http://www.lispworks.com/documentation/HyperSpec/Body/03_ga.htm
そして、 literal の方には "appearing as data in a quote form" なんて書いてあるので (http://www.lispworks.com/documentation/HyperSpec/Body/26_glo_l.htm#literal)
quote の中身は literal, よって破壊的に変更すると undefined ..?
http://www.lispworks.com/documentation/HyperSpec/Body/03_ga.htm
そして、 literal の方には "appearing as data in a quote form" なんて書いてあるので (http://www.lispworks.com/documentation/HyperSpec/Body/26_glo_l.htm#literal)
quote の中身は literal, よって破壊的に変更すると undefined ..?
980デフォルトの名無しさん
2018/07/11(水) 22:59:01.95ID:vOu8ozZx 何故maxには:keyがつかえないの?
定義だから。いや、知ってるけどあってもええやん。
みんなreduceとか使ってやってんの?
定義だから。いや、知ってるけどあってもええやん。
みんなreduceとか使ってやってんの?
981はちみつ餃子 ◆8X2XSCHEME
2018/07/11(水) 23:38:32.21ID:RBgflsxh リテラルの破壊が駄目ってのは割と一般的な気がする。
C がそうなってるのを知ってたので、
後に他の言語を学ぶときも意識して仕様をチェックしてる。
C がそうなってるのを知ってたので、
後に他の言語を学ぶときも意識して仕様をチェックしてる。
982デフォルトの名無しさん
2018/07/12(木) 00:32:56.92ID:bsVrPe++983デフォルトの名無しさん
2018/07/12(木) 00:35:03.43ID:bsVrPe++984デフォルトの名無しさん
2018/07/12(木) 12:25:48.63ID:l643qOMO985デフォルトの名無しさん
2018/07/12(木) 13:13:34.80ID:QKPLqpS1 mapcarしてremove-if #'nullするのと、
mapcan使うのとどっちがおすすめなん。
mapcan使うのとどっちがおすすめなん。
986デフォルトの名無しさん
2018/07/12(木) 17:19:27.72ID:eSxWwMsY >>985
filter 的な話?こういう
(mapcan #'(lambda (x) (and (numberp x) (list x)))
'(a 1 b c 3 4 d 5))
=> (1 3 4 5)
上の例は CLHS からの引用だけど (http://www.lispworks.com/documentation/HyperSpec/Body/f_mapc_.htm)
そこで 「mapcan を使った idiom」とか言ってるから、 mapcan でいいんじゃないの。
filter 的な話?こういう
(mapcan #'(lambda (x) (and (numberp x) (list x)))
'(a 1 b c 3 4 d 5))
=> (1 3 4 5)
上の例は CLHS からの引用だけど (http://www.lispworks.com/documentation/HyperSpec/Body/f_mapc_.htm)
そこで 「mapcan を使った idiom」とか言ってるから、 mapcan でいいんじゃないの。
987デフォルトの名無しさん
2018/07/12(木) 18:20:07.59ID:eSxWwMsY >>980
:key を持つのは sequence か cons を扱う関数/マクロだけみたい。
max は数を扱う関数だから :key がない、くらいの理由なのではと予想。
で、僕だったらそういう状況は loop ~ maximize で書いちゃうな:
(loop with list = '((1 a) (100 b) (5 c))
for i in list
maximize (car i))
:key を持つのは sequence か cons を扱う関数/マクロだけみたい。
max は数を扱う関数だから :key がない、くらいの理由なのではと予想。
で、僕だったらそういう状況は loop ~ maximize で書いちゃうな:
(loop with list = '((1 a) (100 b) (5 c))
for i in list
maximize (car i))
988デフォルトの名無しさん
2018/07/12(木) 19:34:18.52ID:D5ReHf3v 1の関連スレっているの?
どこもレス皆無なんだけど。
ここらへんは辛うじて今年レスがある。
【Lisp】プログラミング言語 Clojure #4【JVM】 [無断転載禁止]©2ch.net
http://mevius.5ch.net/test/read.cgi/tech/1483498849/
【GNU】Emacs Lisp 【Elisp】
http://mevius.5ch.net/test/read.cgi/tech/1382223056/
どこもレス皆無なんだけど。
ここらへんは辛うじて今年レスがある。
【Lisp】プログラミング言語 Clojure #4【JVM】 [無断転載禁止]©2ch.net
http://mevius.5ch.net/test/read.cgi/tech/1483498849/
【GNU】Emacs Lisp 【Elisp】
http://mevius.5ch.net/test/read.cgi/tech/1382223056/
989はちみつ餃子 ◆8X2XSCHEME
2018/07/12(木) 20:31:21.01ID:m8Dd1031 Lisp系だからってひとまとめにするには違いが大きすぎるし、
ちょっとしたことならともかく、
入り組んだ事柄を話すにはやっぱり専門のスレがよさそうな気もするし、
それぞれの言語でコミュニティがあるから、
5ch は雑談程度って割り切ってもいいのかもしれないとも思うし…。
ちょっとしたことならともかく、
入り組んだ事柄を話すにはやっぱり専門のスレがよさそうな気もするし、
それぞれの言語でコミュニティがあるから、
5ch は雑談程度って割り切ってもいいのかもしれないとも思うし…。
990デフォルトの名無しさん
2018/07/13(金) 23:56:41.22ID:1D4AU09B Maxima以外に実用出来るオープンソースの数式処理システムを知らないのだけど
Common Lispが優秀過ぎるからmaximaしかないのか
自分の知らない数式処理システムが他にあるのか
Common Lispが優秀過ぎるからmaximaしかないのか
自分の知らない数式処理システムが他にあるのか
991はちみつ餃子 ◆8X2XSCHEME
2018/07/14(土) 01:56:22.39ID:Eblv1Llg >>990
俺が知ってるのだとこういうのもある。
http://www.math.kobe-u.ac.jp/Asir/asir-ja.html
https://www.gap-system.org/
貢献する人が多いと良くなっていくのは当然だし、
良くなるとまた人が集まってくるというスパイラルが出来るので、
一度人気が出るとあえて他の不人気のプロジェクトに手を出そうという人は
現れにくいんじゃない?
まあ、数式処理と一言で言っても数学の分野は広大だから、
今までコンピュータで扱えなかった分野のためのソフトが新たに出てくることだってあるだろうし、
ちょっと別の分野用の数式処理ソフトを探したら案外たくさんあるかもしれないぞ。
俺が知ってるのだとこういうのもある。
http://www.math.kobe-u.ac.jp/Asir/asir-ja.html
https://www.gap-system.org/
貢献する人が多いと良くなっていくのは当然だし、
良くなるとまた人が集まってくるというスパイラルが出来るので、
一度人気が出るとあえて他の不人気のプロジェクトに手を出そうという人は
現れにくいんじゃない?
まあ、数式処理と一言で言っても数学の分野は広大だから、
今までコンピュータで扱えなかった分野のためのソフトが新たに出てくることだってあるだろうし、
ちょっと別の分野用の数式処理ソフトを探したら案外たくさんあるかもしれないぞ。
992デフォルトの名無しさん
2018/07/14(土) 07:02:57.27ID:0vuXs+dx993デフォルトの名無しさん
2018/07/14(土) 09:15:24.67ID:/GhuOfpQ んじゃ関連サイトは過去スレを除きとりあえず残すけどええんか?
994デフォルトの名無しさん
2018/07/14(土) 13:24:35.04ID:rTAZMq1D Emacs Lispは毛色が違う気がする
995はちみつ餃子 ◆8X2XSCHEME
2018/07/15(日) 00:24:40.70ID:HERu1+Fl >>992
分割しようってのじゃなくて、現時点でそれぞれにスレ立ってるやつがあるわけよ。
個別にスレ立ててるやつは、
ここでやるのはちょっと違うなと思ったからこそ立ってるわけでしょ?
統合するとなると違和感は有るよなっていう程度の話。
分割しようってのじゃなくて、現時点でそれぞれにスレ立ってるやつがあるわけよ。
個別にスレ立ててるやつは、
ここでやるのはちょっと違うなと思ったからこそ立ってるわけでしょ?
統合するとなると違和感は有るよなっていう程度の話。
996デフォルトの名無しさん
2018/07/15(日) 02:10:24.47ID:oGr67yTf このスレ以外ほぼ更新ないけど関連スレは残したよ。
3年以内に消費したいね。
Lisp Scheme Part41
http://mevius.5ch.net/test/read.cgi/tech/1531587928/
3年以内に消費したいね。
Lisp Scheme Part41
http://mevius.5ch.net/test/read.cgi/tech/1531587928/
997デフォルトの名無しさん
2018/07/15(日) 13:59:55.38ID:QJDLEpU3998デフォルトの名無しさん
2018/07/15(日) 14:01:38.31ID:QJDLEpU3 ぬるぽ
999デフォルトの名無しさん
2018/07/15(日) 15:09:22.88ID:jvo4M5NJ >>996
乙
乙
1000デフォルトの名無しさん
2018/07/15(日) 15:09:38.52ID:jvo4M5NJ 1000
10011001
Over 1000Thread このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 1217日 1時間 23分 46秒
新しいスレッドを立ててください。
life time: 1217日 1時間 23分 46秒
レス数が1000を超えています。これ以上書き込みはできません。
ニュース
- 台湾有事での集団的自衛権行使に「賛成」が48.8%、「反対」が44.2% ★5 [♪♪♪★]
- 【高市リスク】立民・小西洋之参院議員「高市総理がとんでもない安全保障オンチで外交オンチ」★2 [ぐれ★]
- 高市早苗首相、独自貫いた1カ月 会食ゼロ、議員宿舎で勉強漬け「飲んでる暇があれば、政策を練り、資料を読みたい」 [Hitzeschleier★]
- 【MLB】大谷翔平、山本由伸、佐々木朗希WBC出場辞退が確実に! トランプ大統領「ロス五輪最優先」指令 どうなる侍ジャパン [牛丼★]
- 【立憲民主党】「質問レベルの低さが立憲の存立危機事態」台湾有事発言を引き出した立憲“執拗追及”が波紋… ★2 [尺アジ★]
- 【フィギュア】田中刑事、結婚を発表 [Ailuropoda melanoleuca★]
- 【NJPW】新日本プロレスワールド part.2413
- 【NJPW】新日本プロレスワールド part.2412
- 競輪実況★1606
- 他サポ 2025-261
- ハム専ファンフェス
- 2025 SUPER FORMULA Lap18
- 竹中平蔵「万博は大成功でしたね。反対していた・批判していた人々たちの反省の弁を聞きたいですね」 [256556981]
- 【実況】博衣こよりのえちえちKoZMy3D晩酌🧪❄🫘
- 【正論】ツイ泯「日本人は基本的に中国を愛してます。餃子を食べウーロン茶は飲み漢字を使用し麻雀し漢方薬する」賛同あふれる [339712612]
- 【速報】高市首相「国際社会は危機に直面している」 [256556981]
- 【ござ専🏡】風間隊🥷集合でござる🏯【風間いろは🍃】
- 【悲報】日本人、突然全員高市早苗の反転アンチになる。外交勝負服発言がどうしても許せない模様 [517791167]
