1read 100read
Lisp Scheme Part37 (268)
TOP カテ一覧 スレ一覧 2ch元 削除依頼 ▼
プログラミングを勉強したいのだが (141)
【Lisp】プログラミング言語 Clojure #3【JVM】 (100)
MSX-BASICの奥義を伝授するスレ (782)
静的型付け言語の潜在開発生産性は今の100倍 ×3 (561)
Excel VBA 質問スレ Part32 (377)
音声合成プログラムを作りる (326)
Lisp Scheme Part37
1 :2013/09/01 〜 最終レス :2013/10/27 Common Lisp、SchemeをはじめとするLisp族全般のスレです ■前スレ Lisp Scheme Part36 http://toro.2ch.net/test/read.cgi/tech/1363171842/ ■テンプレ ttp://wiki.fdiary.net/lisp/ ■関連スレ 【入門】Common Lisp その10【質問よろず】 ttp://toro.2ch.net/test/read.cgi/tech/1361341876/ 【Scheme】Schemeインタプリタ Mosh Part1【Lisp】 ttp://toro.2ch.net/test/read.cgi/tech/1272469779/ 【Lisp】プログラミング言語 Clojure #2【JVM】 ttp://toro.2ch.net/test/read.cgi/tech/1318498898/ 【魔法】リリカル☆Lisp【言語】 ttp://toro.2ch.net/test/read.cgi/tech/1183396621/
2 : いままで日本ではトンコツラーメンは100%安全ですって言ってたのに こうやって一度食中毒事件が発生してしまったので、もうこれ以上日本民族にラーメンを扱うのは無理。 ましてや日本は地震大国で、日本列島には40億年前の活断層が張り巡らされているのだ 食中毒事件を発生するのを想定せずにのんきにラーメン作りしていたラーメン屋の危機意識の無さが敗戦した日本軍にそっくりだ これからはいままでのラーメンに対する安全神話を真摯に反省し、2030年までにラーメンゼロを目標に定めた政府ガバナンスを早急に作成して 足りない分は内向きガラパゴス思考な一国主義に陥らぬよう国際的視野に立脚し、特に東アジアに貢献すべく韓国サムゲタンを食べるべき!!
3 : おつ
4 : 「ステマ」等の絶対にありえない陰謀論を連呼する 頭がおかしい人の相手は誰もしたくない そのために >>2 みたいな政治の話題は、ほとんどの掲示板で禁止になっています
5 : >>4 フジテレビの韓流ステマやってる チョンの地下秘密組織は実在するし 証拠もある 311の人工地震もチョンの地下秘密組織がやったんだけど
6 : >311の人工地震もチョンの地下秘密組織がやったんだけど 流石にこれは駄目だろwwwww XFileが真実とか言っちゃうくらい駄目 もちろんLispのマクロは必須だ(と強引にスレに持ち込む)
7 : そうか。
8 : 動的型付け、メタオブジェクトプロトコル、REPL、継続、イントロスペクション、これらはもう、レベルは兎も角、他の言語にも取り込まれてしまっている。最後の最後にLispに残る優位性があるとするならそれはマクロだね、多分。
9 : 試しに、したらば に移動したらネトウヨが来なくなるのかには 興味ある
10 : 継続って他の言語に取り込まれてるか?
11 : Rubyちゃん
12 : call-ccそのものは無いけど、クロージャ渡しは普通になってる
13 : >>4 あなたがそういう方だったとは思いませんでした。 ひょっとするとラーメン村住人なのではないですか?
14 : 継続とクロージャ渡しは違う気がする
15 : >>8 Perl6 は抽象構文木をコンパイル時に弄る機能が入るらしい。 http://perlcabal.org/syn/S06.html#Macros >>10-12 Rhino は JavaScript の処理系だけど、 Continuation クラスがある。 http://wiki.apache.org/cocoon/RhinoWithContinuations#Continuations >>14 CPS 変換した世界で考えれば同じだよ。 実際、フォーマルな意味論ではそうなってる。 理屈の上では表記方法の問題に過ぎない。 って、どこかで見たんだけどどこで見たんだったか忘れた。
16 : 何年か前にLittle Schemer読んで、Seasonedの最初の方で投げ出しちゃった。 翻訳買ってきたけど読めるかな、、
17 : 継続に近いのはC++やJavaの例外処理
18 : setjmp()/longjmp() はどうですか?
19 : >>17 それって脱出継続だけやん
20 : >>17 一番近いのはgotoだと聞いたが
21 : gotoが継続に一番近いという意見はプログラミング言語の意味論史から見れば本末転倒の答えだぞ。 なにしろ継続(continuation)という概念は表示的意味論(denotational semantics)の産みの親のStracheyが 「goto文に指定されている飛び先ラベルの表示は何なのか?」という問題に対する答えとして発明し導入した概念なのだから。 継続の発明によってgoto文を含む言語に対して表示的意味論を定義し与えることが可能となり、その継続という概念は エラーなどの例外処理に対する意味論を与える上でも使えると判って活用されるようになったのは、Stracheyがgotoのために 継続を発明してから何年も経ってからなのだから。 つまり継続とは何よりも先ずgotoの意味を捉える目的で発明されたということだ。 だから継続に一番近いのがgotoなのではなく、継続の最も基本的な部分は正にgotoの表示的意味のために作られたんだよ。
22 : 要するにどれもノイマンマシンの機械語ではGOTOだし、 意味論では継続なんだよ。
23 : ユークリッドの幾何学しか幾何学と呼んではいけないみたいだな
24 : 部分リストを見つける関数って srfi とかにないのでしょうか 自分で作るしかない? (find-sub-list (..... 1 2 3 ....) (1 2 3) ) => 123 の場所
25 : >>24 たぶん無い。 汎用的にしようとすると比較関数に何を使うかでバリエーションを作るかオプショナル引数で取るかのいずれかが必要になるので、 仕様をまとめようとすると意外に面倒くさい話になると思う。
26 : util.match は…
27 : Lisperはこの世のゴミ はやくGCされろ
28 : 突発的に感情が高ぶる病気 専門家にご相談ください
29 : LISP以外では格好がつかない
30 : matchマクロで circular-list だけマッチさせる事ってできないの?
31 : matchマクロを自分で書こうとしてるのだけど (match v ((x ...) x)) の ... を実装することができない。 どんな仕組みで実装してるのだろう
32 : パターンマッチライブラリって色々あるんじゃねーの? どれの話? っていうか Common Lisp の話?
33 : (define-syntax ellipses-syntax-test (syntax-rules ( ... ) ((_ x ... ) (list x )) )) (ellipses-syntax-test 7 ...) > '(7) これが出来ないのです
34 : >>33 R5RS では syntax-rules で ... にマッチさせることは不可能。 まわりくどいけど、判定の一部を別の手続きにするくらいしかない。 (define (test x) (equal? x '(7 ...))) (define-syntax ellipses-syntax-test (syntax-rules () ((_ x ...) (test '(x ...))))) (ellipses-syntax-test 7 ...)
35 : R7RS だと非常に簡単に回避する方法が用意されてる。 syntax-rules が従来よりひとつ多く引数を取ることができ、 ... のかわりに使う省略子を指定できる。 (define-syntax ellipses-syntax-test (syntax-rules :: (...) ((_ x ... ) (list x)))) (ellipses-syntax-test 7 ...) この場合は省略子は使ってないので適当な識別子を書いておけばいい。
36 : R6RS ではパターンに ... は現れることは出来ないけど、 syntax-case なら fender 節でより詳細な判定が出来る。 (define-syntax ellipses-syntax-test (lambda(stx) (syntax-case stx () ((_ x y) (eqv? (syntax->datum #'y) '...) #'(list x))))) (ellipses-syntax-test 7 ...)
37 : r6rs なら (... ...) が使えない? ttp://www.r6rs.org/final/html/r6rs/r6rs-Z-H-14.html
38 : syntax-rules がネストした場合、 外側が展開されたときに (... ...) が ... に置換えられるということであって、 リテラルとしての ... を表すときに (... ...) が使えるという意味ではないよ。 ところで syntax->datum で文脈を剥してから ... と eqv? で比較するよりも free-identifier=? で比較した方が R6RS らしいかな。
39 : define-macroだけではmactchマクロ作れないって事でいいの?
40 : だけってどういうこと? 使える構文が define-macro だけってこと? そりゃ無理ぽ。
41 : みんなSECDマシンってなんて発音? セクド? エスーイーシーディー?
42 : 困ったときは Google 様に聞いてみよう。 http://translate.google.com/#en/ja/secd 入力ボックスの右下にあるスピーカーボタンをクリックすると発音を聞けるよ。 あえてカタカナ表記するなら「セキッド」に聞こえる。
43 : >>42 間違って結果側の右下押したら 「エスイーシーディー」 とか言われてしまって?????ってなっちゃった 左の英語入力ボックスの方だと セクィッドとセキッドの間くらいに聞こえるね
44 : >>42 IBM の発音は イビーム だったのか…。
45 : >>44 言語設定が英語以外になってね?w フランス語やドイツ語とかだとイビエムって感じに聞こえるけど、 英語ならアイビーエムってけっこうはっきり聞こえるぞw
46 : >>42 英語の略語?ってアルファベットを順番に発音するのが正しいと思ってた DMAC ディーマック? ディエムエーシー? clos シーロス? シーエルオーエス? それにgoogle翻訳とかweblioとかの発音ってとこまで正しいのか気になる
47 : community.schemewiki.org/?scheme-faq-macros にマクロでreverseする方法のってるけど (define-syntax reverse-order (syntax-rules () ((_ e) (reverse-order e ())) ((_ (e . rest) r) (reverse-order rest (e . r))) ((_ () r) r))) (reverse-order (2 3 -)) ;=> 1 階層深いところもreverseできない (reverse-order (2 (2 1 +) -)) ;=> 1
48 : >>47 こんな感じかな。 (define-syntax reverse-order-deep (syntax-rules () ((_ e) (reverse-order-deep e ())) ((_ ((e ...) . rest) r) (reverse-order-deep rest ((reverse-order-deep (e ...)) . r))) ((_ (e . rest) r) (reverse-order-deep rest (e . r))) ((_ () r) r)))
49 : Windows7 の lispbox の slime で portableAllegroServer を動かしたい とかいう質問はこのスレでいいのでしょうか?
50 : いいんじゃないの 答えられる人がいるかどうかはさておき
51 : >>47-48 srfi-53 使うと、驚くほど簡単にreverse-deepできる なんでsrfi-53はwithdrawnなんだろう こんなに便利なのに
52 : ここに議論の記録があるよ。 何を言いたいのかよくわからないので英語がわかるひと解説よろ。 http://srfi.schemers.org/srfi-53/mail-archive/threads.html
53 : syntax-rules が名前の衝突を回避してくれるのはletで導入した変数だけ? 自由変数として導入した変数は処理系依存なのかな?
54 : 自由変数もするよ http://codepad.org/mDVMEs2U
55 : マクロっていつ使うの?
56 : 今でしょ!
57 : そういうのはいいから。
58 : クールな返しにワラタ
59 : On Lisp にわかりやすい指針が書かれてる。 マクロじゃなきゃ出来ないことをするときにマクロを使う。 逆にマクロでなくても出来ることにマクロは使わない方がいい。 要するに最後の手段なので普通のプログラムではマクロ定義の割合はかなり小さいことの方が多いと思う。 具体的にどういうときに使うかを知りたければ On Lisp はバランスのよい本だと思うよ。
60 : OnLispはマクロの手前までしか読んでないなあ 読まねば
61 : マクロをクローズアップしたような本もいくつかあるけど、 そういうのだとマクロの使用が既に前提になってるから 「使うことになったらこんな風に書けるよ」って感じなわけで 言語全体の中での位置付けがわかり難くて 「いつ使うか」ということに対する解は不充分なことがあると思う。 だから、全体を俯瞰しながらマクロの使いどころを解説している という意味で On Lisp のことをバランスが良いと評した。
62 : というか、OnLispってマクロの本だよね?
63 : そうだよ。 でも言語全体の中でのマクロの立ち位置がわかるというか 「いつ使うか」がわかりやすい本ってこと。
64 : On Lispは訳本がひどいので原著がオススメ
65 : 原著はタダですしねぇ
66 : 訳書もドラフト版はタダで読めるし、基本的な考え方だけならそれで充分だと思うけど。 でも、そんなに高価なわけじゃないし買ってやれよ。 (俺は買ってないけど。)
67 : Let Over Lambdaの日本語訳の訳の品質ってどうなんでしょう? 実店舗で見かけないので読んだ人の意見が聴きたいです。 訳も原著も通販位でしか買えそうにないので、訳がまずそうなら原著買いたいです。
68 : うーん、自分は特に変だとは思わなかったけど…
69 : LOL は難しかったので途中で投げ出した。翻訳は別に気にならなかったけど、何言ってるかさっぱりだった。あれは原文でも読みにくい気がする。
70 : LOLむずいよね 一応全部読んだけど血肉になった感触がない
71 : 一回読んだだけでは血肉にはならないでしょ サンプルコードを一行一行丁寧に追った上で何周もして理解を深めるべきレベルの本
72 : みなさんありがとうございます。 翻訳のクオリティは問題無さそうですね ただ流石に難しそうですが、、
73 : LOL を読むより、もしまだなら、PAIP をお勧めする。あれはホンモノだ。
74 : LOL って、 Let Over Lambda なのか、Land Of Lisp なのか…
75 : Lisp in Small PiecesとThe Art of the Metaobject Protocolも忘れずに
76 : LOL = Let Over Lambda LoL = Land of Lisp
77 : SYJL = 素数夜曲:女王陛下のLISP
78 : ONLS = On Lisp
79 : FE = 深町英太郎
80 : 晒すなやw
81 : Structure and Interpretation of Computer Programs = WH(和田本)
82 : アマゾンのレビューに Let Over Lambda は On Lisp の続編て書いてあるけど、もしかしてこれもマクロの本ですか? 勘弁して
83 : >>82 はい
84 : むしろマクロ過激派の筆頭エヴァンジェリストなんじゃないかあの本は
85 : マクロとは何ぞや、を知らない状態で読んだ時 On Lisp より LOL の方が読みやすかったよ
86 : LOL のマクロは何かわからんがすごい、と思うけど使う気になれない。本流じゃないと思う。
87 : マクロ好きな人って、他人のマクロ定義を見ても普通のlispコードと同じ程度にはバグがないことを理解できるのだろうか defmacro が出てくるたびに、 ' と ` と , ばっかりのコードを読まされるこっちの身にもなってほしい
88 : ( ' と ` )
89 : マクロに辟易してそうな顔、いいね
90 : ( ' λ ` )
91 : 中国人風だな。
92 : ( ^ マ ^ λ)
93 : >>87 マクロは読むものじゃなく、展開するものだね
94 : コードは読むものじゃなく、実行するものだね
95 : macroexpandと逐次実行がナウなヤングにバカウケ
96 : マクロのバグもそりゃあるだろうけど、そんなにデバッグ大変かな? あんまり苦労したことないなぁ。展開すれば分かるし。
97 : >>96 逆に考えるんだ 「展開しなければ分からない」と
98 : アナフォリックマクロっていうのはsyntax-rulesで書くのは絶対に不可能なんですか?
99 : syntax-rulesでは無理だね syntax-caseなんかを使えば書けるよ
100read 1read
1read 100read TOP カテ一覧 スレ一覧 2ch元 削除依頼 ▲
Excel VBA 質問スレ Part32 (377)
【初心者歓迎】C/C++室 Ver.87【環境依存OK】 (371)
リーダブルコーディング技術スレ (187)
JAVAってこんなことも出来ないの? (695)
簡単なプログラム言語って何? (142)
【Lisp】プログラミング言語 Clojure #3【JVM】 (100)
--log9.info------------------
テール島の迷宮 LABYRINTHE DE TERRE (207)
ゲイト・スゲー!ナイト2 (435)
【B.B.ライダー】TACK・ゴリッチュ総合6【Zodiarc】 (104)
【巡り廻る。】ゲ製うんかん。総合53【ジャンクエデン】 (379)
タオルケットをもう一度シリーズ69 (520)
何故、竜騎士07は奈須きのこになれなかったのか? (425)
【はちみつくまさん】東方サッカー続編希望スレ (383)
Arcanum Knights Floor7 (165)
【海外ファンタジーRPG】 Helherron (787)
ふりーむ!批評スレ part25 (366)
ディアボロの大冒険 164部 (121)
MEMORIES OF REPLICA 攻略スレ (281)
MUGEN】MUGENキャラうpするよー17【キャラ補完 (147)
Xoperations 27 (655)
【アンチ】洞窟物語は過大評価されすぎ【スレッド】 (300)
フリゲのランキング作ろう (297)
--log55.com------------------
日本の3大英雄は義経・信長・竜馬ですよね?
仮想世界
【歴史難民板】自治新党その1【新ステージ】
幕末剣豪強さ議論と雑談
信長、三国志に続く第3の光栄歴史シュミレーションを考えてあげようぜ
●犬を喰う野蛮な土地=ダサツマ●
逃亡の果てに
岡田以蔵について語るスレ