[過去ログ]
Lisp Scheme Part40 [転載禁止]©2ch.net (1002レス)
Lisp Scheme Part40 [転載禁止]©2ch.net http://mevius.5ch.net/test/read.cgi/tech/1426481152/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
1: デフォルトの名無しさん [sage] 2015/03/16(月) 13:45:52 ID:EEYZoZ1i 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/ http://mevius.5ch.net/test/read.cgi/tech/1426481152/1
973: デフォルトの名無しさん [sage] 2018/07/11(水) 20:14:45 ID:VhV09Bdv >>965 ↓の isnil あたりを参考にすれば作れそう。 https://en.wikipedia.org/wiki/Church_encoding#List_encodings http://mevius.5ch.net/test/read.cgi/tech/1426481152/973
974: 966 [sage] 2018/07/11(水) 20:23:44 ID:7FwajRbN >>972 破壊的な変更には注意が必要なこと自体は、入門書などを読んで知っていたのですが、 今回の例では関数を呼び出す度に別のリストをletが束縛するだろうjkと勝手に思っていました。 勉強になりました。ありがとうございます。 http://mevius.5ch.net/test/read.cgi/tech/1426481152/974
975: デフォルトの名無しさん [sage] 2018/07/11(水) 20:33:50 ID:Igjhxsb4 >>966 SBCLは警告が出るから出ないように修正するだけだし、無視しても意図した通りに動く LispWorksは警告出ないの? http://mevius.5ch.net/test/read.cgi/tech/1426481152/975
976: 966 [sage] 2018/07/11(水) 20:46:42 ID:7FwajRbN >>975 でないっす。 http://mevius.5ch.net/test/read.cgi/tech/1426481152/976
977: 966 [sage] 2018/07/11(水) 21:11:34 ID: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) http://mevius.5ch.net/test/read.cgi/tech/1426481152/977
978: デフォルトの名無しさん [] 2018/07/11(水) 21:46:27 ID: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]> h
ttp://mevius.5ch.net/test/read.cgi/tech/1426481152/978
979: デフォルトの名無しさん [sage] 2018/07/11(水) 22:50:38 ID: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://mevius.5ch.net/t
est/read.cgi/tech/1426481152/979
980: デフォルトの名無しさん [sage] 2018/07/11(水) 22:59:01 ID:vOu8ozZx 何故maxには:keyがつかえないの? 定義だから。いや、知ってるけどあってもええやん。 みんなreduceとか使ってやってんの? http://mevius.5ch.net/test/read.cgi/tech/1426481152/980
981: はちみつ餃子 ◆8X2XSCHEME [sage] 2018/07/11(水) 23:38:32 ID:RBgflsxh リテラルの破壊が駄目ってのは割と一般的な気がする。 C がそうなってるのを知ってたので、 後に他の言語を学ぶときも意識して仕様をチェックしてる。 http://mevius.5ch.net/test/read.cgi/tech/1426481152/981
982: デフォルトの名無しさん [sage] 2018/07/12(木) 00:32:56 ID:bsVrPe++ >>977 SBCLは警告出すということは危険なコードと言うのを認識してコピーを作成してるんでしょ ちなみにEmacsだとクオートされたリストの書き換えは問題ないからついやってしまうな http://mevius.5ch.net/test/read.cgi/tech/1426481152/982
983: デフォルトの名無しさん [sage] 2018/07/12(木) 00:35:03 ID:bsVrPe++ >>977 すまん間違えた 普通にリテラル内が書き換えられてるって事か http://mevius.5ch.net/test/read.cgi/tech/1426481152/983
984: デフォルトの名無しさん [] 2018/07/12(木) 12:25:48 ID:l643qOMO >>973 なるほど、first側にatomかpairかのフラグを入れて、実際のリストの構造はsecond側に入れればいいのか。 ありがとう、この線でやってみる。 http://mevius.5ch.net/test/read.cgi/tech/1426481152/984
985: デフォルトの名無しさん [sage] 2018/07/12(木) 13:13:34 ID:QKPLqpS1 mapcarしてremove-if #'nullするのと、 mapcan使うのとどっちがおすすめなん。 http://mevius.5ch.net/test/read.cgi/tech/1426481152/985
986: デフォルトの名無しさん [sage] 2018/07/12(木) 17:19:27 ID: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 でいいんじゃないの。 http://mevius.5ch.net/test/read.cgi/tech/1426481152/986
987: デフォルトの名無しさん [sage] 2018/07/12(木) 18:20:07 ID: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)) http://mevius.5ch.net/test/read.cgi/tech/1426481152/987
988: デフォルトの名無しさん [sage] 2018/07/12(木) 19:34:18 ID: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/ http://mevius.5ch.net/test/read.cgi/tech/1426481152/988
989: はちみつ餃子 ◆8X2XSCHEME [sage] 2018/07/12(木) 20:31:21 ID:m8Dd1031 Lisp系だからってひとまとめにするには違いが大きすぎるし、 ちょっとしたことならともかく、 入り組んだ事柄を話すにはやっぱり専門のスレがよさそうな気もするし、 それぞれの言語でコミュニティがあるから、 5ch は雑談程度って割り切ってもいいのかもしれないとも思うし…。 http://mevius.5ch.net/test/read.cgi/tech/1426481152/989
990: デフォルトの名無しさん [] 2018/07/13(金) 23:56:41 ID:1D4AU09B Maxima以外に実用出来るオープンソースの数式処理システムを知らないのだけど Common Lispが優秀過ぎるからmaximaしかないのか 自分の知らない数式処理システムが他にあるのか http://mevius.5ch.net/test/read.cgi/tech/1426481152/990
991: はちみつ餃子 ◆8X2XSCHEME [sage] 2018/07/14(土) 01:56:22 ID:Eblv1Llg >>990 俺が知ってるのだとこういうのもある。 http://www.math.kobe-u.ac.jp/Asir/asir-ja.html https://www.gap-system.org/ 貢献する人が多いと良くなっていくのは当然だし、 良くなるとまた人が集まってくるというスパイラルが出来るので、 一度人気が出るとあえて他の不人気のプロジェクトに手を出そうという人は 現れにくいんじゃない? まあ、数式処理と一言で言っても数学の分野は広大だから、 今までコンピュータで扱えなかった分野のためのソフトが新
たに出てくることだってあるだろうし、 ちょっと別の分野用の数式処理ソフトを探したら案外たくさんあるかもしれないぞ。 http://mevius.5ch.net/test/read.cgi/tech/1426481152/991
992: デフォルトの名無しさん [sage] 2018/07/14(土) 07:02:57 ID:0vuXs+dx >>989 ええ…… Lispでスレ分割なんかしたら 過疎って仕様がないぞ 現に今過疎ってるのにもっと過疎る http://mevius.5ch.net/test/read.cgi/tech/1426481152/992
993: デフォルトの名無しさん [sage] 2018/07/14(土) 09:15:24 ID:/GhuOfpQ んじゃ関連サイトは過去スレを除きとりあえず残すけどええんか? http://mevius.5ch.net/test/read.cgi/tech/1426481152/993
994: デフォルトの名無しさん [sage] 2018/07/14(土) 13:24:35 ID:rTAZMq1D Emacs Lispは毛色が違う気がする http://mevius.5ch.net/test/read.cgi/tech/1426481152/994
995: はちみつ餃子 ◆8X2XSCHEME [sage] 2018/07/15(日) 00:24:40 ID:HERu1+Fl >>992 分割しようってのじゃなくて、現時点でそれぞれにスレ立ってるやつがあるわけよ。 個別にスレ立ててるやつは、 ここでやるのはちょっと違うなと思ったからこそ立ってるわけでしょ? 統合するとなると違和感は有るよなっていう程度の話。 http://mevius.5ch.net/test/read.cgi/tech/1426481152/995
996: デフォルトの名無しさん [sage] 2018/07/15(日) 02:10:24 ID:oGr67yTf このスレ以外ほぼ更新ないけど関連スレは残したよ。 3年以内に消費したいね。 Lisp Scheme Part41 http://mevius.5ch.net/test/read.cgi/tech/1531587928/ http://mevius.5ch.net/test/read.cgi/tech/1426481152/996
997: デフォルトの名無しさん [sage] 2018/07/15(日) 13:59:55 ID:QJDLEpU3 https://dotup.org/uploda/dotup.org1580975.bmp http://mevius.5ch.net/test/read.cgi/tech/1426481152/997
998: デフォルトの名無しさん [sage] 2018/07/15(日) 14:01:38 ID:QJDLEpU3 ぬるぽ http://mevius.5ch.net/test/read.cgi/tech/1426481152/998
999: デフォルトの名無しさん [sage] 2018/07/15(日) 15:09:22 ID:jvo4M5NJ >>996 乙 http://mevius.5ch.net/test/read.cgi/tech/1426481152/999
1000: デフォルトの名無しさん [sage] 2018/07/15(日) 15:09:38 ID:jvo4M5NJ 1000 http://mevius.5ch.net/test/read.cgi/tech/1426481152/1000
1001: 1001 [] ID:Thread このスレッドは1000を超えました。 新しいスレッドを立ててください。 life time: 1217日 1時間 23分 46秒 http://mevius.5ch.net/test/read.cgi/tech/1426481152/1001
1002: 1002 [] ID:Thread 5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。 運営にご協力お願いいたします。 ─────────────────── 《プレミアム会員の主な特典》 ★ 5ちゃんねる専用ブラウザからの広告除去 ★ 5ちゃんねるの過去ログを取得 ★ 書き込み規制の緩和 ─────────────────── 会員登録には個人情報は一切必要ありません。 月300円から匿名でご購入いただけます。 ▼ プレミアム会員登録はこちら ▼ https://premium.5ch.net/ ▼ 浪人ログインはこちら ▼ https://login.5ch.net/
login.php http://mevius.5ch.net/test/read.cgi/tech/1426481152/1002
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.406s*