1 名前:デフォルトの名無しさん [2008/04/04(金) 18:18:17 ] □過去スレ□ Part20: ttp://pc11.2ch.net/test/read.cgi/tech/1205021786/ Part19: ttp://pc11.2ch.net/test/read.cgi/tech/1200237296/ Part18: ttp://pc11.2ch.net/test/read.cgi/tech/1186922295/ Part17: ttp://pc11.2ch.net/test/read.cgi/tech/1177065699/ Part16: ttp://pc11.2ch.net/test/read.cgi/tech/1172404795/ Part15: ttp://pc10.2ch.net/test/read.cgi/tech/1151025773/ Part14: ttp://pc8.2ch.net/test/read.cgi/tech/1132275726/ Part13: ttp://pc8.2ch.net/test/read.cgi/tech/1115901841/ Part12: ttp://pc8.2ch.net/test/read.cgi/tech/1100229366/ Part11: ttp://pc5.2ch.net/test/read.cgi/tech/1091456033/ Part10: ttp://pc5.2ch.net/test/read.cgi/tech/1075630259/ Part9: ttp://pc2.2ch.net/test/read.cgi/tech/1069594582/ Part8: ttp://pc5.2ch.net/tech/kako/1058/10582/1058263391.html Part7: ttp://pc5.2ch.net/tech/kako/1042/10421/1042167213.html Part6: ttp://pc3.2ch.net/tech/kako/1031/10315/1031560687.html Part5: ttp://pc3.2ch.net/tech/kako/1023/10230/1023091882.html Part4: ttp://pc.2ch.net/tech/kako/1016/10162/1016211619.html Part3: ttp://pc.2ch.net/tech/kako/1008/10082/1008220265.html Part2: ttp://pc.2ch.net/tech/kako/1002/10025/1002584344.html Part1: ttp://piza2.2ch.net/tech/kako/987/987169286.html
34 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 18:14:29 ] (explode 'SYMBOL)
35 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 18:57:57 ] >>32 internされてて欲しいとき(キーになるもの等)はシンボル 頻繁に作ったり壊したりするならストリング 極めて頻繁にコンペアするならシンボル とりあえず、デフォルトはストリングだな
36 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 19:04:42 ] (glint '(Lisp Scheme Gauche)) ⇒ バグの数 21
37 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 21:05:54 ] ネタにマジレスっていうか、元ネタが微妙だったねw Lisp1.5ってなあ。
38 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 12:05:35 ] >>34 => (S Y M B O L)
39 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 19:00:23 ] EOPLとLisp in Small Pieceってどっちがやさしいですか? 簡単な方から挑戦してみようと思ってます。
40 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 21:27:55 ] lispのプロジェクトをいろいろ見てるけど、pythonと比べて toy problem解いただけで実際の複雑な問題に適用できないの多くないですか? ある程度泥臭いこともやる人がいないからなのかな
41 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 21:34:57 ] つ 実際の複雑な問題 kwsk
42 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 21:35:06 ] >>40 そのプロジェクトってどれよ? #うちの社内プロジェクトだったらいろんな意味で笑う
43 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 21:35:33 ] そうですね、あなたにはPythonが向いてると思います。
44 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 22:15:10 ] pythonと実際の複雑な問題だけじゃどう吊られると喜んでくれるかわかんないYO!
45 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 22:21:15 ] >>40 ttp://www.unixuser.org/~euske/doc/python/python-lisp-j.html
46 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 22:36:06 ] >>40 そういうネタの露出度が高いだけでは?
47 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 22:44:19 ] すまんが教えてくれ read関数って空白類記号(スペース、タブ、改行)は読み飛ばすのか?
48 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 22:47:09 ] うんそうだよ
49 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 23:50:45 ] >>48 アリガト
50 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 00:43:10 ] >>40 Pythonマシンとかつくってから出直してこい
51 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 00:51:40 ] まあせめてPmacsぐらい作ってほしいね。
52 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 07:40:06 ] >>51 Prologで書かれたpmacsなら昔使ってたなあ。 入社したら新人教育がLisp班とProlog班に分かれて、俺はProlog班だった。
53 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 09:37:55 ] そんな夢のような会社があるわけねえだろ!
54 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 10:03:54 ] >>53 AIバブル全盛期にはあったんだよね。 俺がやったPrologはFM-8上のCP/Mで動くmicro-PLOLOGという丸括弧で括るPrologだった。 pmacsを使ったのはそれとは別のワークステーションで、小型冷蔵庫ぐらいの筐体だったよ。
55 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 11:28:48 ] d.hatena.ne.jp/niitsuma/20080328/1207515072 swigよりも高度なことができるcffiのwrapper toolを試してみました しかし少し複雑なc++コードを与えるとエラーをおこして止まります 基のc++コードを自動でwrapが生成できようにいじるべきか それとも自動はあきらめて手書きした方がいいのでしょうか? pythonなら自動でwrapを作成できるみたいなので pythonを経由してlispから呼ぶという2度手間という手もできるのでしょうか?
56 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 12:27:56 ] ツールをいじるのは手書きを極めてから
57 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 13:01:22 ] >>52-54 ワロタw 今でもそんな会社があるなら入社してみたい
58 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 13:18:24 ] >>54 Micro-PROLOGですぜ、旦那。 "Programming in Logic"読んだ口ですか? Lisp班の環境は? muLispとか?
59 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 16:57:05 ] >>53 昭和時代ならあり得る話
60 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 19:08:22 ] 2001年宇宙の旅に出てくるHALってLispで書かれてるんでしょ?
61 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 19:25:21 ] そんな設定あったっけ?
62 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 19:33:22 ] ありません
63 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 19:49:41 ] >>58 > "Programming in Logic"読んだ口ですか? はっきり覚えていないけど教材は手作りだったような。 > Lisp班の環境は? muLispとか? 名前は忘れたけど日立のプラズマ(赤色1色)Laptop(DOS 16bit)で動いている マルチウインドウのLispだった。Common Lispだったかどうかは分からない。 あとこの会社にはXerox J-Starもあったよ。俺が入って1〜2年で廃棄されたが。
64 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 19:56:27 ] >>63 muLISP/86 on MS-DOSの可能性大
65 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 19:57:08 ] そりゃファクスくらいあるだろw
66 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 22:53:36 ] 雨の日も風の日も 息をするようにlambdaを書く。 そんな人にわたしはなりたい。
67 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 23:09:16 ] 自分自身の定義を書き換える関数って書ける? 学習して賢くなる関数。
68 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 23:12:54 ] >>67 可能。
69 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 23:18:57 ] メモ化された関数は定義は変わらないけど一度計算した結果を覚えて高速化する。
70 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 23:29:22 ] 関数で新たな関数を作ってevalとか?
71 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 23:31:24 ] 「賢い」の定義はどんなものなの?
72 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 23:55:57 ] 「かしこいランプ」(商品名)って 走行中 かつ 周辺が暗い ならば 点灯、という論理で動作してるな
73 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 00:14:07 ] >>67 できる。つーか、そんなのアセンブラでもできるだろ。w
74 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 00:16:14 ] まぁ自己書き換えコードはあまりお勧めしないがな
75 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 00:48:58 ] 関数は普通に賢いので、データを賢くすることを考えてはどうか
76 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 10:30:54 ] >>67 Yコンビネータを使ったメモ化 citeseer.ist.psu.edu/mcadams01practical.html
77 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 12:40:09 ] >>67 書き換えるのは簡単だが、賢くするのは難しい。w
78 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 14:32:38 ] Yは相互再帰を学習できますか?
79 名前:67 mailto:sage [2008/04/09(水) 18:04:46 ] 昨夜は書きこんだ後に寝てしまったです。スマンです。 Schemeでdefineを使って定義した内容をリストとして取り出し、 書き換えて自分自身を再定義するってことを考えてました。 自らアルゴリズムを改良していくとかできたらおもしろいなぁって。 夢物語だけれども人造人間キカイダーのように思考し、反省し、学習するプログラム があったらおもしろいだろうね。
80 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 18:14:27 ] AIか?
81 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 18:53:44 ] 昔ネットに人工無能ってのがあったなあ。
82 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 19:43:42 ] >>81 今でもあるよ
83 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 19:48:48 ] あるんだワラ
84 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 19:50:58 ] >>82 うずらか〜!
85 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 20:08:52 ] 実は俺・・・
86 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 21:03:31 ] cffi使ってたのだけど 大きいプログラムを呼ぼうとする glibc detected *** sbcl: malloc corruption で止まる。何か対策ないのでしょうか?
87 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 21:05:43 ] 大きいとはどのくらいか、 プログラムの大きさかデータの大きさか、 具体的にどのくらいより大きいと駄目なのか、 その辺をいろいろ実験してみると有意義であろう。
88 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 21:12:24 ] これをcffiで呼ぼうとしたら同じバグになる #include <stdio.h> //ここが問題 int test(int i){ return 0; }
89 名前:88 mailto:sage [2008/04/09(水) 21:25:19 ] allegro CLならこんなこと起きないのでしょうか?
90 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 21:28:53 ] >>89 それを聞く前に、普通は起きた処理系が何かを書くもんじゃないかい?
91 名前:88 mailto:sage [2008/04/09(水) 21:30:21 ] sbclです
92 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 21:36:53 ] >>88 だけで駄目ってのはさすがに無かったと思うけどなあ。 #includeを抜くと大丈夫なんだよね? OSは何?
93 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 21:49:26 ] >>79 defineで定義した関数をリストとして取り出すことはschemeでは(少なくとも規格内の方法では)出来ない。
94 名前:88 mailto:sage [2008/04/09(水) 23:36:13 ] OSはubuntu7.10です
95 名前:デフォルトの名無しさん mailto:sage [2008/04/10(木) 00:30:35 ] >>60-62 【HAL-9000 series】 映画版では1992年1月12日、クラークによる小説版では1997年同日に、イリノイ大学アーバナ・シャンペーン校にて誕生した。 開発者はシバサブラマニアン・チャンドラセガランピライ、通称チャンドラ博士。 HALはIBMを1文字ずつ前にずらして命名された。 小説『2010年宇宙の旅』では、チャンドラー博士自らIBM説を否定した。 が、アーサー・C・クラークは後年になってからIBM社がこの説を迷惑がっているどころか半ば自慢しているらしいと聞き及び、 著書「3001年終局への旅」のあとがきで「今後はこの説の間違いを正す試みを放棄する」と記した。 スペースシャトルの機上コンピュータには、高い信頼性を確保するためにシャトル専用のプログラミング言語が用いられており、これを「HAL/S」という。 「HAL/S」を構築したIntermetrics社の創業者は、大学の同僚でこの言語のコンセプト構築に多大な貢献があった J. Halcombe Laning 博士に敬意を表し、 彼の通称 Hal に因んで HAL と命名した。 しかしこれがいかにもくどく不自然なことから、やはり「HAL/S」は「HAL 9000」に因んだものという憶測が浸透した。 ちなみにシャトルの三番機、OV-103の船名は「ディスカバリー号」となっており、『2001年宇宙の旅』との関連が噂された。 奇しくもスペースシャトル史上2度の大事故の後の初飛行はいずれもこの機体である。
96 名前:デフォルトの名無しさん mailto:sage [2008/04/10(木) 00:41:51 ] IBM AP-101 The IBM AP-101 is an avionics computer, used most notably in the U.S. Space Shuttle, but also in the B-52 and F-15, among others. When it was designed, it was a high-performance pipelined processor with core memory. Today, its specifications are exceeded by many microprocessors. The AP-101, being the top-of-the-line of the System/4 Pi range, shares its general architecture with the System/360 mainframes. The shuttle software is written in HAL/S, a special-purpose high-level language, whereas AP-101s used by the US Air Force are mostly programmed in JOVIAL.
97 名前:デフォルトの名無しさん mailto:sage [2008/04/10(木) 01:44:53 ] >67 遺伝的アルゴリズムを調べろ。 アクセス規制だから詳細は書けない。
98 名前:デフォルトの名無しさん [2008/04/10(木) 01:50:06 ] 遺伝的プログラミングだ。KOZAが最初にLISPを使って示した方法だ。 アクセス規制で携帯だから、他で調べろ
99 名前:デフォルトの名無しさん mailto:sage [2008/04/10(木) 02:09:52 ] ja.wikipedia.org/wiki/%E9%81%BA%E4%BC%9D%E7%9A%84%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0 確かにLISP向きな感じがするね
100 名前:デフォルトの名無しさん mailto:sage [2008/04/10(木) 02:40:03 ] >>78 Y そのままだとやりにくいんじゃないかな。 二関数での相互再帰なら (Y2 f g) = (f (Y2 f g) (Y2 g f)) みたいに拡張するとか。
101 名前:デフォルトの名無しさん mailto:sage [2008/04/10(木) 03:31:54 ] よし、この調子でまたAIバブルを発生させようぜ! ぶくぶく
102 名前:デフォルトの名無しさん mailto:sage [2008/04/10(木) 07:08:50 ] 次はセマンティックバブルだ! LispハッカーはXMLという妥協を受けいれ、 メインストリームに帰り咲くのだ
103 名前:デフォルトの名無しさん mailto:sage [2008/04/10(木) 09:34:46 ] セマンティックバブルって SOAPバブルと同じ運命って気がするんだけど
104 名前:デフォルトの名無しさん mailto:sage [2008/04/10(木) 13:34:13 ] とりあえずソープで泡踊りしてきまつ
105 名前:78 mailto:sage [2008/04/10(木) 18:51:55 ] >>100 おもしろそうなので書いてみます。Arcで
106 名前:デフォルトの名無しさん mailto:sage [2008/04/10(木) 21:35:57 ] iPod touchでGauche動かせた人いる? ノシ
107 名前:デフォルトの名無しさん mailto:sage [2008/04/10(木) 21:42:06 ] 普通のUnixなので普通に動きますね。NDAがあるので詳しいことは書けませんが。w
108 名前:デフォルトの名無しさん mailto:sage [2008/04/10(木) 21:51:32 ] >>107 Open Programming環境では動かなかったってこと?純正SDKでしか試してないならNDAあるから書けないかw
109 名前:デフォルトの名無しさん mailto:sage [2008/04/10(木) 21:57:20 ] すまん、純正しかやってない。
110 名前:デフォルトの名無しさん mailto:sage [2008/04/10(木) 23:22:07 ] >>109 d。参考になりました。 Zaurusポートもそうだけど、Open Programming環境では問題点が出ることが多いのに、純正では大丈夫だったのはちょっと驚き。
111 名前:デフォルトの名無しさん mailto:sage [2008/04/11(金) 00:15:52 ] How to Design Programs ttp://www.htdp.org/ たまげた。折角本を購入したのに、こっちのが充実してる。 orz
112 名前:デフォルトの名無しさん mailto:sage [2008/04/11(金) 01:39:50 ] >>111 分厚いな 読む暇も気力もない
113 名前:デフォルトの名無しさん mailto:sage [2008/04/11(金) 05:48:47 ] >65が放置されてるのはお約束?
114 名前:デフォルトの名無しさん mailto:sage [2008/04/11(金) 23:05:11 ] Seasoned Schemer 18章、オレも解決! ttp://codepad.org/cWiNn5qr 18章の出だしでリストが返ってくるような書き方が良くないと思う。 この二つを比べてみるとconsとkonsの違いがわかる。 (kdisplay (lots 5)) (display (lots 5))
115 名前:デフォルトの名無しさん mailto:sage [2008/04/11(金) 23:33:05 ] もう少しきれいに書けYO! (define kdisplay (lambda (c) (c (lambda (a d) (cond ((null? a)(display "")) (else (display "(") (display a) (k2display d) (display ")") (newline))))))) (define k2display (lambda (e) (cond ((null? e)(display "")) (else (e (lambda (a2 d2) (display " ") (display a2) (k2display d2)))))))
116 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 02:41:52 ] blogに投稿する処理を半自動化したいのですが 参考になるコードまたはパッケージなどないでしょうか?
117 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 05:42:17 ] XPなんですがDr.Schemeを放置しておくと勝手にメモリがんがん食ってフリーズします。
118 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 09:38:50 ] >>116 Common LispやSchemeのコードは知らないけど、 Emacs LispでAtomに対応してるのが二、三あったはず。 参考にするだけなら、PerlやPythonやRubyとかのが、 いくらでもありそうだけど。 ぶっちゃけ、処理自体は全然難しくないんで、 Atomとかのリファレンス見ながら自分で実装しても、 あまり苦労はしないと思う。自分でやろうとしたときは、 UI書くのが一番だるそうだと思った。
119 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 13:27:05 ] 継続について あっわかった!! ん? こういう場合は。。。 これの繰り返し
120 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 16:41:02 ] プログラミングGaucheの306ページのモジュールシステムですが 本のとおりに打ち込んで実行しても (addx 10) が110にならずに 11になってしまいます。本に誤記はありますか?
121 名前:120 mailto:sage [2008/04/12(土) 16:47:07 ] 再度、Emacs立ち上げたらできました。 失礼しました。
122 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 20:14:44 ] >>116 xml-rpcがつかえるブログなら、gaucheのxml-rpcライブラリがある。サードパーティーだけど。 ぐぐればすぐ見つかる。
123 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 23:35:41 ] ttp://codepad.org/hrzyLxr1 SRFI-40のストリームが使えた。
124 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 23:47:53 ] ttp://d.hatena.ne.jp/reinyannyan/20070831 PLT Scheme用のモナドがあるらしい。使った人? ノシ
125 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 00:39:49 ] なんだかわかんねーけど、Schemeってすごいんだな。
126 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 00:44:51 ] Ruby使いがSchemeを勉強して何か得るところはありますか?
127 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 00:51:22 ] Ruby厨の汚名を晴らせる
128 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 01:58:43 ] 晴らせた時には既にただのLisperだけどな
129 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 02:00:25 ] λ..........
130 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 02:17:41 ] そりゃあ Brainfuck でも得るところはあるでしょう 失うものも多いかもしれないけど
131 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 02:23:00 ] 何かSchemeの人は怖いと聞いていましたが、本当のようですね。 Rubyはクロージャも継続もスレッドも備えていますから、 Schemeはなんでも自作しないといけなくて大変そうに見えるのですが。
132 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 02:45:09 ] まさにRuby厨と呼ばれるにふさわしいな。
133 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 02:47:05 ] 思い込みの激しい人というよりは、目の前で色々思い込んでみせて 引き留めて欲しい人、という感じだな。気持ち悪い。
134 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 02:56:09 ] 構って君に構っちゃいけませんよ
135 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 07:35:33 ] .............................λ ````````````y
136 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 11:35:59 ] ArcとOzにヒントを得て、Orzって言語を考えたんだ。 仕様はまだ無いけど。
137 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 11:41:45 ] 2ch発のマルチパラダイムLisp系言語orz な?
138 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 11:55:35 ] SICPとHtDPはどっちが読みやすい?
139 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 12:20:12 ] どっちも読まなくていい 読まなくていいけど、ちょっとつまみ食いしてみようかな というふいんきがベスト
140 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 12:25:27 ] ````````````y <やあ、ラムダさん .............................λ <やあ、Yコンビネータさん
141 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 13:21:36 ] >>138 比べるものが違うと思う。 [ {Simply Scheme or HtDP}読了後 ⇒ SICP ] or [Little Schemer ⇒ Seasoned Schemer] でも最近は [Little Schemer ⇒ Seasoned Schemer ⇒ SICP] という読み方が多いかも。
142 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 13:23:29 ] λY
143 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 13:25:40 ] .............................λ ````````````y
144 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 13:27:00 ] .............................λ y ````````````おっとっと
145 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 13:48:06 ] 「SICP完全制覇」とか出ないかな。
146 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 15:21:56 ] >>145 あるじゃん。Instructors Manualって解説用の本。
147 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 15:26:05 ] それ読んだらよくわかったの?
148 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 15:34:35 ] >>147 yes
149 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 15:52:36 ] >>148 アメリカの教科書って難しい内容だと生徒がデスマになるからか、HPがあったり副読本がついてたりするな。至れり尽くせり。 Gauche本のDesktop ReferenceとかInstructor's Manualも出て欲しいw
150 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 16:12:16 ] Structure and Interpretation of Classical Mechanics SICMっていう古典力学のプログラミング本も出てるラスィ
151 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 16:17:25 ] これでしょ www.amazon.co.jp/dp/0262194554/ さらに難しそうなんです><
152 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 16:19:58 ] ブックレヴュー見ていて思い出したんだけど、 Littleの9章で出てきた"partial function"のpartialって偏微分の偏だよね。 どこかで「引数を全て使わない関数のことだ」と書いてあったけど、 全て使っててもpartialだと言ってるし意味が通じない。
153 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 16:35:45 ] >>151 ttp://mitpress.mit.edu/catalog/item/default.asp?ttype=2&tid=4048 今売ってるのはコッチ。目に痛い赤の表紙w
154 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 16:37:23 ] 同じ本ではないでしょうか><
155 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 16:40:06 ] >>152 完全な関数になっていないという意味でpartial(部分的な)と呼んでいる。 引数を使うかどうかは呼称に重要ではない。関数が計算を終了するかどうかでpartialと区別する。
156 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 16:41:41 ] >>155 ええ。それはわかりました。 永遠にリスト内を探し続けるが、見つけるべき文字列が見つからないとか、、 そんな例がありましたね。
157 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 16:42:57 ] >>154 >>151 は526ページだけど、>>153 は534ページある。中身は少し違う。
158 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 16:44:06 ] ISBNが同じなんです><
159 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 16:44:08 ] >>152 解説もあったよ ttp://en.wikipedia.org/wiki/Partial_function Little Schemerは謎解き本だと思うので いま九章読んでる人は読まないほうがいいかも
160 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 16:46:43 ] >>158 古いと灰色や金色の表紙のものがある。amazon.co.jpは古い表紙のpicを使いまわしてると思われ
161 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 16:48:15 ] >>160 実際は赤なんだけど灰色の画像使ってるだけかと思ってました。
162 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 16:51:26 ] ISBNが古いのと同じなのかぁ。出版社のHPで確認するのって大事だな。 amazon.co.jp見ただけじゃそんなことわからないYO!
163 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 16:56:34 ] SICMオンライン mitpress.mit.edu/SICM/
164 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 16:57:04 ] >>159 そのページの対応する言語を見ると日本語がないw
165 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 17:00:19 ] SICM 持ってる。けど、自分はラグランジュアンがよくわかってないので 宝の持ち腐れだ。先に数学、勉強するよ。
166 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 17:00:30 ] 和田訳のSICPがあれだけグダグダなのを考えるとSICMを翻訳できるとは思えんなw
167 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 17:07:18 ] >>164 これじゃ違うかな。 ja.wikipedia.org/wiki/%E5%86%99%E5%83%8F
168 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 17:10:16 ] >>167 d。部分写像(partial mapping)がpartial functionに近い。
169 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 17:23:20 ] いいなあ、学生は暇があって
170 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 17:25:01 ] SICMのユーティリティープログラムのページ (Linux用) ttp://www-swiss.ai.mit.edu/~gjs/6946/linux-install.htm
171 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 17:26:16 ] 学生じゃないし暇じゃないけど、ゴロゴロしてる。
172 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 17:27:32 ] >169 先週から仕事中の現実逃避に>163読み始めたよ 出来れば日本語訳が( ゚Д゚)ホスィ・・・
173 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 17:38:30 ] さーてそろそろLittle Schemer読んじゃわないと````````````y
174 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 17:42:20 ] 8章くらいから難しくなって涙目
175 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 17:44:33 ] もれも8章涙目だったけど、何度も読み返して何とか理解した。 まだちょっともやもや残ってるけど、、、、 今9章だお。
176 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 17:45:57 ] >>138 HtDPより同じ著者のEOPLの方がいい。 Little Schemerシリーズもいいけど、SICPとEOPLは体系的な知識が得られる。
177 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 17:46:34 ] Simply Schemeは?
178 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 17:48:01 ] EOPLってナーヌ?
179 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 17:48:55 ] しばらく英語に触れてなかったので、Littleで一杯一杯なんだ。 Simply→SICPという意図で書かれているらしいけど、英語読めるか心配。 >>178 おそらくEssential Of Programing Languageかと。
180 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 17:53:22 ] Simply SchemeはLittle Schemerに近い内容をもっとページ数をかけて説明してる。 表計算プログラムを作る演習などのfinger practiceが充実してるけど理論的には浅い。 Haskellで言えばCraftみたいな内容。 HtDPも理論的なレベルは同程度。こっちはプログラミング作法にページを費やしている。
181 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 17:54:16 ] >>179 d
182 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 17:57:20 ] >>180 ありがとう。 退屈させないように色々やってみて、プログラミングに馴染んで来たら、 さてそこから深くするには何が困難か?と考えさせて SICPにつなげる感じなんですかね。
183 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 18:04:13 ] >>182 そんな感じ。Littleの8章で困るのも演習でなれることが出来ないからじゃないかい? SICPに取り組むには、他の言語経験があればLittleぐらい難しくても短期間に十分なレベルに達するけど、 全くの初心者には大量のfinger practiceで経験を積ませないと理論の良さが実感できないから壁を感じるんだと思う。
184 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 18:05:35 ] >>183 まさにそんな感じです。Simplyいっといたほうが良かったかな・・・・ プログラミングGaucheで代わりになります?
185 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 18:21:41 ] >>184 Gauche本もってるかな?リファレンス的でfinger practiceはあまりないよ。 SimplyはSICPの前に必要な知識をうまく選んで入れてると思う。 でも Little Schemer ⇒ Seasoned Schemer と読んで、ネット上の他人のプログラムを読むのも面白い。 楽しんで継続できるのが一番いい方法だと思う。
186 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 18:25:27 ] これ行った人、報告よろ Continuation Fest 2008 logic.cs.tsukuba.ac.jp/Continuation/abstract.html
187 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 18:29:36 ] >>185 持ってないです。ネットの立ち読み版は眺めましたけど。 折角Little読み終わりそうだから続けてSeasoned読んじゃおう。 どうもありがとう。
188 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 18:44:45 ] >>186 おれも内容知りたいなぁ>>継続フェスタ。
189 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 19:02:27 ] >>187 Seasonedをしっかり理解するとSICPの山場といえる3・4章が簡単になるからガンガレ。 特に継続(callcc)がSICP3.5ストリームで利用されるのは面白い。 これがわかるとSICMの入門準備も完了。runge-kutta4(つまり微分方程式)とか出来るとシミュレーションの幅がちょっと広がるし。 ストリームで無限リストが作れるのも目からうろこの体験だった。 これ位はできないとHaskellerに馬鹿にされるしw
190 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 19:03:30 ] xyzzyの独自機能をcommon lispで読み代えるmacroみたいなのないでしょうか?
191 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 19:12:15 ] Little Schemerな連中は、はてなとかで、グループ作って 活動すれば良いんじゃないかと思った。
192 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 19:22:24 ] まああれだ コンパイラといえばyacc OSといえばブートローダー SchemeといえばLittle Schemer
193 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 19:33:26 ] Little Schemer 何度でも読んでいいですか?
194 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 19:37:18 ] いいですよ
195 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 19:43:04 ] 何度も読むと理解がさらに深まりますか?
196 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 19:44:33 ] 少なくとも浅くなることは無いから安心して読め
197 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 19:50:30 ] じゃあ毎日音読する。
198 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 20:04:50 ] >>190 どういうものをイメージしてるのかよく分からないよ……
199 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 20:33:16 ] 何と言ってもSICPだ。俺はあれを読んで人生が変わった気分だよ。 プログラマは皆SICP必須だな。あれを読めば、場当たり的なコーディングから 完全に開放されるよ。
200 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 20:34:24 ] 読むなら、やっぱり英語版?
201 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 20:49:26 ] >>200 俺は英語版を読んだ。最初翻訳本買おうかと思ってAmazon見たらあのコメントの 群れを見て引いちゃったよw。「超循環評価機」とかのタイトル見ても???だったしね。 英語は教科書だからか、受験英語やってりゃ普通に読める英文だよ。ネイティブ風な 言い回しは一切無い。多少英語が読めるんだったら、タダでネットで見れるんだし、 原語でいいんじゃないか。 ちなみに俺はあまりの感動にハードカバーの洋書を買ってしまった。9000円ぐらい したかな。ただ、持ち運びにはペーパーバックのほうがいいし、値段も半額以下なので これについては激しく後悔しているw
202 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 21:06:57 ] 昔のマグロウヒル日本語版から比べたら、現行日本語版なんて天国みたいなもんだよ。
203 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 21:10:17 ] 別に悪い訳じゃないと思うけどなぁ。 超循環評価機をメタサーキュラ〜とかカタカナで書かれたら死ぬ。
204 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 21:12:16 ] Amazonの書評は異常だね。攻撃的な人って居るんだなと感心する。
205 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 21:21:20 ] ニヤニヤ
206 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 22:46:13 ] >204 あれは読んでない奴の戯言だ Amazonのあの手の書き込みは鵜呑みにしない事にしている
207 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 23:14:33 ] 単語まで全て逐語訳にしないで ->計算機(computer) みたいな感じで元の英単語も書けば良かったんだよな。
208 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 23:17:09 ] 字幕の最初の方が出来上がったてるみたいだ。
209 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 23:28:31 ] >>207 英語版はLaTeXだけど、日本語版は組版でやってるからちょっとした修正が出来ない。 もとの単語を書くと文字数が増えるからページ数を抑えるためにポイント数を抑えざるを得ない。 でもそれは技術的に難しい。かといってページ数を増やすと\5,000以上になってしまう。 つまりピアソンがコストダウンできる技術力を持っていないことにもそういう工夫を出来ない原因がある。 かといってムリをすればマグロウヒルみたいに倒産して書物が入手できなくなってしまう。 良い本なら買い支えるというのも消費者の選択なんジャマイカ?
210 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 00:28:47 ] >>152 total functionは、全ての実引数に対して値が定義されている関数。 partial functoinは、値の定義されてない実引数のある関数。 具体例は、 (define (f x) (if (= x 1) 1 (f (- x 1)))) 定義域を自然数だとするとtotal function。 整数だとするとpartial function。 負の数の時に停らないあるいは値が未定義だから。 (define (f x) (/ 1 x))もxが0だと駄目だからpartial function。
211 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 01:22:42 ] それじゃ数学関数の定義で駄目。152はそこは判ってるようだ。これを関数型での関数の引数でイパーン的に説明汁
212 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 01:25:17 ] >>152 >>155 が説明して>>156 で納得して終了済。
213 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 01:44:48 ] >>210 の方が合ってるぞ。 foldoc.org/?partial+function > 関数が計算を終了するかどうかでpartialと区別する。 これは間違い。例えばSMLのような例外のある計算系では、 関数の値が未定義の場合も停止する。Liftされているから。 表示的意味論の本を読めばちゃんと書いてあるよ。
214 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 01:56:14 ] Dを意味関数だとしたら、 ∃x (x≠⊥ & D[f(x)] = ⊥) なら、fはpartial functionってことだよな。
215 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 02:03:05 ] >>214 を見た漏れの脳にはテトリスが浮かんだ とりあえず泣いてくる
216 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 02:03:58 ] >>215 ああ俺もギャル文字を思い出した。一緒に泣こうぜ。
217 名前:152 mailto:sage [2008/04/14(月) 02:08:46 ] >>210 なんかいろんな意見が飛んでますが、、ありがとう。 >>215-216 漏れもれも。
218 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 05:09:54 ] 戸田山和久の「論理学を作る」はよかったな 大学に対しては良書を教えてくれた事に関しては感謝してる
219 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 06:46:38 ] そういう感じで「計算論 計算可能性とラムダ計算 著高橋 正子」とかが self-containedで読めるようになる本教えてください。
220 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 12:54:26 ] 他言語で書かれたプログラムのメタ制御したいのだけど 適切なbindingがない場合はxml-rpcが一番簡単なのかな?
221 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 13:30:46 ] いいえ
222 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 17:56:28 ] 計算理論の基礎 シプサ てのが気になってる。 アマゾンによると翻訳がすこぶる良いという。
223 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 19:17:52 ] >>218-222 スレチ。移動ヨロ。 ttp://pc11.2ch.net/test/read.cgi/tech/1202273631/
224 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 21:58:52 ] こっちじゃない? science6.2ch.net/test/read.cgi/informatics/1160740645/
225 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 22:23:08 ] すまんがちょっと教えてくれ。 Chiken Schemeは簡単に実行形式ファイルが作れるんかの?
226 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 22:29:51 ] Reasoned SchemerのPrologもどきって、本当に動くんだなw ttp://codepad.org/6uu28twJ KANREN : a declarative logic programming system ttp://kanren.sourceforge.net/#mini
227 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 22:48:17 ] >>225 お前のことなんぞ知らんからお前にとって簡単かどうかはお前が判断しろ。 マニュアル通りやってみてできたならお前にも簡単にできるってことだ。 そうでなければ難しいんだろう。
228 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 22:52:39 ] KANRENって「関連」なのかな。 Oleg Kiselyovって日本と研究してるのか? okmij.org/ftp/
229 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 23:26:02 ] Reasoned Schemer 1. Playthings ttp://codepad.org/buHFpoPQ
230 名前:デフォルトの名無しさん mailto:sage [2008/04/15(火) 01:58:12 ] HtDPの目次見たけど継続とかlet、letrecは出てこないんだね。Schemerシリーズのほうが 難しそうだ。
231 名前:デフォルトの名無しさん mailto:sage [2008/04/15(火) 03:03:41 ] >>227 ふむ、chicken schemeっての初めて見てみたけど簡単に実行ファイルが作れるんだな。
232 名前:デフォルトの名無しさん mailto:sage [2008/04/15(火) 06:20:53 ] >>207 そうそう、和田先生が翻訳メモとして技術用語の翻訳対照表をつけてくれれば、 読みやすかったのに。
233 名前:デフォルトの名無しさん mailto:sage [2008/04/15(火) 11:15:30 ] schemeをC++プロジェクトに組み込みたいのですが、 組み込みやC++クラスのエクスポートが簡単にできる ポータブルな処理系ってありますか?
234 名前:デフォルトの名無しさん mailto:sage [2008/04/15(火) 12:10:18 ] libgaucheとCで書いてextern "C"ってすればいいんじゃね 俺もほとんど知らない。教えてほしい
235 名前:デフォルトの名無しさん mailto:sage [2008/04/15(火) 14:27:24 ] Chickenはsyntax-caseが使えるんだけど 有理数がないのと多倍長数がないのが残念。 biglooもそうだったような気がするけど Cにコンパイルする処理系はCの整数型、浮動小数型に縛られる物が多い。 Gambit-CはCコンパイルタイプには珍しく 多倍長数、有理数と正確数表現の複素数(これはGaucheにもない!)があるんだけど SRFI周りが互換性の無い独自の実装なのが残念。 (たとえばSRFI-22の引数にスクリプトファイル名を含めない、文字列ポートを読み込むと空になる等) >>233 組み込み系UnixライクOSでも動くとなればguileかScheme48でしょう。 Cでプログラムを書くのも容易だし ソースに手を入れなくてもターゲットで動く。 但し前者は遅い上にR5RS準拠ではない。(R5RS手続きは網羅してるけど) 後者はR5RS準拠で完成度は高いけどやや重くてやや遅い。 処理系ソースに手を入れる事を厭わないのであればGaucheかGambit-C。 前者は軽くてそこそこ速い。後者はそこそこ軽くて(コンパイルすれば)かなり速い。 PLTScheme(MzScheme)がUnix系全般で動くようになれば最強っぽいんだけど BoehmGCを移植しただけじゃ動かないのが×。 さらにコンパイルしなくても速いのにコンパイルしても(そんなに)速くならないのはご愛嬌。
236 名前:デフォルトの名無しさん mailto:sage [2008/04/15(火) 15:16:12 ] >>235 >複素数(これはGaucheにもない!) あるっしょ
237 名前:デフォルトの名無しさん mailto:sage [2008/04/15(火) 15:18:45 ] 正確数表現の複素数(これはGaucheにもない!)
238 名前:デフォルトの名無しさん mailto:sage [2008/04/15(火) 15:52:35 ] > (exact? (sqrt -1024)) #t これはいいsqrt
239 名前:デフォルトの名無しさん mailto:sage [2008/04/15(火) 16:03:30 ] R5RS-6.2.3 sqrtのような潜在的に不正確な演算は、正確引数に適用されたとき、 可能ならばいつでも正確な答えを算出することが望ましい(が要求はされていない)。 なので処理系依存。
240 名前:225 mailto:sage [2008/04/15(火) 20:40:37 ] >227 参考になった。ありがとう。
241 名前:デフォルトの名無しさん mailto:sage [2008/04/15(火) 23:24:29 ] >>225 Linuxだと簡単にバイナリ作れた。 winだとコンパイルも通らなかった orz mingwin32嫌いだ!
242 名前:デフォルトの名無しさん mailto:sage [2008/04/15(火) 23:35:56 ] >241 あれ、出来なかったっけ? ちょっと今MinGW環境壊しちゃったので手元で確認できないけど
243 名前:デフォルトの名無しさん mailto:sage [2008/04/15(火) 23:40:20 ] >>242 できたらgccのバージョンとかライブラリのバージョンさらしてください。 しょぼーん。 #共通環境はsbclが一番良いんじゃないかと思うようになっちゃったのでscheme嫌いになりそう
244 名前:デフォルトの名無しさん mailto:sage [2008/04/16(水) 00:14:09 ] >>243 Makefile.mingwを使うとchicken-config.hの作成に失敗する。 そこだけ手作業でやったらあとは普通にmakeが走ってる。 今ビルド中。っていうか本家に最新版のWindowsバイナリ置いて無いな。
245 名前:デフォルトの名無しさん mailto:sage [2008/04/16(水) 00:30:12 ] みんな苦労してでもWindowsdで使いたいんだな。 Windowsは偉大だな。
246 名前:デフォルトの名無しさん mailto:sage [2008/04/16(水) 00:43:18 ] 自分が使いたいというより、より広く使われるものを作りたい、そういうものを作る ために使いたい、という動機が大きいのでは? 趣味にしても、仕事にしても。
247 名前:デフォルトの名無しさん mailto:sage [2008/04/16(水) 00:53:25 ] >>228 ttp://scheme2006.cs.uchicago.edu/12-byrd.pdf KANRENって「関連」みたいだけど中国語。 Chung-chieh Shan(單中杰)というハーバード出身でラトガース大学のAssistant Prof.の人とやった仕事。
248 名前:244 mailto:sage [2008/04/16(水) 00:55:30 ] よくみたらMakefile.mingw-msysってのがあったな。 こっちでやれば一発でいけたのかも。 まぁ、gcc3.4.5で普通にコンパイルはできたよ。
249 名前:242 mailto:sage [2008/04/16(水) 02:07:59 ] >248 漏れもgcc4.3.0 & Makefile.mingw-msysでやってみたけど問題なさそう
250 名前:デフォルトの名無しさん mailto:sage [2008/04/16(水) 02:18:42 ] >>246 処理系はとりあえずUNIX系の上でつくられて、 そういう尊い方々がWinに移植なさるのですね。 感動しました。 漏れはWinでないと使う気にならないから使ってるだけだが、 いつかそうなりたいね。
251 名前:デフォルトの名無しさん mailto:sage [2008/04/16(水) 02:23:10 ] とりあえずUNIX上に作られるのはそのほうが楽だからだな。 WindowsのAPIってなんか例外事項が多くてごちゃごちゃしてる感じ。
252 名前:231 mailto:sage [2008/04/16(水) 03:00:47 ] >>248 俺はgcc3.4.2+msysでうまくいったみたい
253 名前:デフォルトの名無しさん mailto:sage [2008/04/16(水) 12:42:00 ] >簡単に実行形式ファイルが作れる という観点では エンドユーザが自分でMinGWを入れるという前提はおかしい 普通の人はVisual C++とMzSchemeを使えばいい
254 名前:デフォルトの名無しさん mailto:sage [2008/04/16(水) 13:28:11 ] >>253 「エンドユーザ」はMinGWを入れる必要は無いだろ
255 名前:デフォルトの名無しさん mailto:sage [2008/04/16(水) 13:47:15 ] じゃあ「簡単に実行ファイルを作りたいWindowsユーザ」に訂正
256 名前:デフォルトの名無しさん mailto:sage [2008/04/16(水) 13:54:12 ] 簡単だけど話題としてはスレ違いだね。
257 名前:デフォルトの名無しさん mailto:sage [2008/04/16(水) 15:26:31 ] 簡単だから得意げに説明するのが恥ずかしい気がするけど、注意点を ・ソースファイルと同じ名前のモジュールで包む たとえば hello.scm なら (module hello mzscheme (display "Hello, world!") (newline)) ・--exeオプション たとえば mzc --exe hello hello.scm ・bccに対応していると書いてあるが無償版のbccでは失敗するみたい
258 名前:デフォルトの名無しさん mailto:sage [2008/04/16(水) 19:15:29 ] >>235 とりあえず、いろいろ試してみました。 guile) ・GPLライセンス ・試してないがVCでコンパイルできなさそう Scheme48) ・VCでもコンパイル可能 ・ただ、実行の際に〜.imageファイルが必要なのと、 その作成にScheme48インストールディレクトリのフルパスが必要・・・ ・(美学の問題だが)関数名がおかしいのと、コンパイル時に 「○○関数は未定義です」「○○は初期化されていません」みたいな警告が普通に出てくる。 chiken) ・VCでもコンパイル可能のはず。自分には無理だった。 ・(pcreを使っているので多分)正規表現がマルチバイトをサポートしていない。 Gauche) ・コアはVCでコンパイル可能だが、拡張ライブラリが全滅 ・クラス登録機構がGNUのリンカの実装に依存している。VCだと拡張ライブラリを作ること自体が難しそう。 ・基本的にposixべったり ・デフォルトで日本語が使える。ドキュメントも日本語
259 名前:デフォルトの名無しさん mailto:sage [2008/04/16(水) 19:16:14 ] Gambit-C) ・VCでコンパイル可能 ・自動生成されたソースが長すぎるため、IntelliSenseの更新に長大な時間がかかる。たまに開発環境自体が落ちる ・(サイズが)すごく大きいです・・・ 総括) こうやって並べてみると、日本語が使えるGaucheか、Gambit-Cが問題が少なさそうですね。 自分は多分、gaucheをstatic libraryで使うことにすると思います。 個人的にはluaのようにもっと手軽に組み込める処理系があると嬉しいのですが、文句ばっかり言ってもしょうがないですよね。 >>235 さん、ライブラリの紹介どうもありがとうございました。
260 名前:デフォルトの名無しさん mailto:sage [2008/04/16(水) 21:36:34 ] Windowsで動かしたいというのは判るが、VCでコンパイルしたいという理由がよくわらかん。 MinGWじゃ駄目なのかい。
261 名前:デフォルトの名無しさん [2008/04/16(水) 21:42:41 ] IntelliSenseが使いたいのか 頭のとんがった上司がいるのか その両方か
262 名前:デフォルトの名無しさん mailto:sage [2008/04/16(水) 22:09:15 ] >>259 Gauche-win32-0.8.13.exeじゃだめなの?
263 名前:デフォルトの名無しさん mailto:sage [2008/04/16(水) 22:16:20 ] exeがつくれないとプログラムをしている気にならないんじゃないかな? Windowsしか知らなかったころはexeをつくれて一人前の開発環境というイメージだった。
264 名前:デフォルトの名無しさん mailto:sage [2008/04/16(水) 22:21:32 ] >>263 自分で使うコードなら別にexeにする必要ないんだけど、ちょいと配布したりするのに実行環境必要とか言うと困るからじゃないの? どんなプログラムだかしらないけど。
265 名前:233 mailto:sage [2008/04/16(水) 22:28:13 ] >>260 理由1、VCの便利な機能が使いたい 理由2、schemeという小さな言語がVCでコンパイルできない理由がわからない 仕様も小さいんだしVCでもコンパイルさせてくれよ・・・ というのが本音です。 >>261 > IntelliSenseが使いたいのか どちらかというとこっちです。 でも後者の方が面白いので、できればこっちを強弁したいですねw >>262 すみません、書いてませんでしたが自分は>>233 です。 C++に組み込むので、別途インストールというのはちょっと考えられないのです。
266 名前:デフォルトの名無しさん mailto:sage [2008/04/16(水) 22:33:41 ] >>260 MinGWはMSYSが要るのか要らないのかはっきりしてほしいw
267 名前:デフォルトの名無しさん mailto:sage [2008/04/16(水) 22:39:02 ] POSIX べったりという表現が面白かった 確かに逆から見たらそう感じても不思議じゃないね
268 名前:デフォルトの名無しさん mailto:sage [2008/04/16(水) 22:47:21 ] >>266 実行だけなら要らない。ランタイムのDLLさえも要らない場合が多い。 最近のVCはRuntime(もちろん自由に再配布できるが)を入れないといけないことが多い。 VCじゃなきゃ嫌んの人はMinGWをよく知らないだけではないかと思う。
269 名前:デフォルトの名無しさん mailto:sage [2008/04/16(水) 22:51:25 ] Schemeは実はC及びC++(のスタックフレーム)とは相性が悪い。 ファーストクラスの継続があるため 関数からreturnする時に 単純にスタックフレームを開放できない。 また、末尾呼び出しの最適化は C及びC++では行えない。 (だからSchemeの場合はバイトコードインタプリタの方が 効率が良かったりする。) これらの理由により、ネイティヴコードをポータブルに吐く方法がない為 GCC用のソースは手を入れない限り他の処理系でコンパイルできない場合が多い。
270 名前:デフォルトの名無しさん mailto:sage [2008/04/16(水) 22:58:01 ] >>265 > 理由2、schemeという小さな言語がVCでコンパイルできない理由がわからない > 仕様も小さいんだしVCでもコンパイルさせてくれよ・・・ 君がScheme処理系を書けば良いのでは?
271 名前:デフォルトの名無しさん mailto:sage [2008/04/16(水) 23:43:31 ] ちなみにschemeは仕様がすっきりしているだけで、 実行環境はさほど小さくない。処理系もけっこう大きい。
272 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 00:18:53 ] 書けねえよ
273 名前:233 mailto:sage [2008/04/17(木) 00:22:42 ] >>268 自分のプログラムでは外部ランタイムは無用です。 あと全く別の問題として、schemeのために開発環境を変えるということ自体がちょっと嫌なんです。 >>269 ・ネイティブスタックを使わず、自前のスタックかメモリを確保すれば 継続でもコルーチンでもポータブルに作れます(作れるはずです) ・バイトコードを採用すれば、処理系のコードは自然とポータブルになります ・ネイティブコードをポータブルに吐く方法なんて自分は一つも知りません って、あまり面白くないツッコミですみません。 あと、schemeがポータブルに実装できないわけではですよ。 実際、明らかにwindowsのようなマイナーな環境(?)を無視した作りのgaucheでも、 コア部分はコンパイルできるわけですし。 >>270 今までは、あまり実用にならなそうなマイ言語を作っている人を、 内心バカにしたりもしていたのですが(すみません) schemeでも他の言語でも、自作の処理系が一つあると意外なところで使えたりするのかもしれませんね。 scheme作るのも面白そうなので、時間があれば是非やってみたいです。
274 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 00:27:05 ] スキルないのが丸分かりの自己紹介ありがとう。
275 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 00:44:29 ] 漏れも学生時代はMacではHyperCardを必要とするスタックは軟弱物。Pascal or Cで実行形式をつくるのがカコイイだと思っていたし、 Win32でもランタイムを必要とするVBを見下し、CをつかってもMSVCRTの依存すら排除しようとしていた経験のある俺には233の気持がわかる気がする。
276 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 01:44:38 ] ゲーム作るときはマシン語モニタをBASICで自作することから始める時代の話だな。 そんなMSXが許されるのは小学生までだよねー
277 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 01:49:42 ] >>273 GaucheはWindowsを無視はしてないよ。 多少なりともVC++を意識した変更が入っていたはず。 ttp://practical-scheme.net/wiliki/wiliki.cgi?Gauche%3aWindows%2fVC%2b%2b を参照するといいと思う。マンパワーが足りないから進捗が遅いだけで。 成果をフィードバックしてくれるなら、向こうにとっても渡りに船だろうし、 本気でやる気があるなら、WiLiKiに書き込んでみればいいんじゃない? 上手く協力できれば、双方にとって良い結果になると思うけど。
278 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 02:12:31 ] スキームの質問 今、手元にThe Little Schemerがあるんだけど この本に書いてある例題は全部 Dr.schemeで実行できるの?
279 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 03:33:26 ] 1行で全部の処理をするんでなくて、 まずcdrする 次にcarする、 最後にcdrする、 と3段階に分けて処理をしたいんだけど、 どうすればいいの? BASICみたいに a=(a,b,c) みたいにリストを変数に代入して、 ってできるの?
280 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 04:21:40 ] (let* ((a '(a b c)) (a (cdr a)) (a (car a)) (a (cdr a))) a)
281 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 04:27:41 ] (progn (setq a '(a b c)) (setq a (cdr a)) (setq a (car a)) (setq a (cdr a)) ) Lispならこんなのでいいんでないの
282 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 06:53:06 ] CL全然知らないんだけど手続きぽく書きやすいのかな。
283 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 07:11:22 ] 端っこに括弧がいるから慣れない人は書きにくいと思う。 Lisp脳が育つと括弧を空気のように感じるようになる。
284 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 07:41:53 ] いや、Schemeにくらべてってこと。
285 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 07:43:50 ] 再帰じゃなくloop使うと手続き型っぽくなるよ。(カッコだらけだけど)
286 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 08:00:11 ] >>273 > あと全く別の問題として、schemeのために開発環境を変えるということ自体がちょっと嫌なんです。 いずれEmacs+Schemeに慣れればVisual Studioには戻りたくなくなる。 そうでなければそもそもSchemeには縁がない。
287 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 08:21:30 ] >>284 SICPやSchemerシリーズやっている人は、 schemeが手続き型っぽく書けないと思い込んでいる人が多い。 ただそれらのテキストが関数型っぽく書いているというだけなのに。 Common Lispとさほど変わらない。
288 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 08:57:25 ] >>287 本当?かなり違うと思ってた。 例外とかgotoとかを手続型と さほどかわらないように書くにはどうするの?
289 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 09:32:52 ] 手続き型っぽいのがgoto?
290 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 09:34:13 ] つ loopマクロ
291 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 09:43:41 ] つ 継続
292 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 10:06:59 ] ; f(g(h(x))) (apply (fcompose f g x) x) みたいなものができる筈なんで>>279 の処理も (fcompose-and-apply cdr car cdr a) みたいにできるfcompose-and-apply(仮)が書ける気がせんでもない
293 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 10:08:35 ] tagbody は?
294 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 10:13:13 ] emacs lispならconditon-case(try..catch)とかsignall, error(throw)とか unwind-protect(finally)とかあるから殆んど手続き型と同じように書けるよ R6RSにも似たようなものがあるはず
295 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 11:43:51 ] >>288 例外はr6rsに入ってただろ。手軽にやりたいなら継続呼べばいいし。 goto相当のジャンプも継続が使えるけど、 継続はラベルじゃなくてオブジェクトなので使い勝手をgotoみたいにしたいなら 自前でラップしなきゃ駄目かもな。
296 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 13:01:50 ] S式でいいならマクロでなんでもできる。CLならCインタープリタの実装まであるくらいだ。
297 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 14:51:41 ] Google Apps APIs をlispから使う方法ないのでしょうか?
298 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 17:02:27 ] >>297 使えよ
299 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 17:08:01 ] ないならnilを、あるなら使い方を返していただきたいのですが。
300 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 17:32:41 ] >>299 (values nil "ttp://www.cliki.net/web%20API" "Clikiにはズバリはないみたいだけど、 cl-ajaxとかでできるのかな。" "よくわからない。")
301 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 21:12:46 ] >>247 d。miniKANRENは徐々に進化しているようでした。 leanTAP⇒KANREN⇒miniKANREN⇒alphaKANREN ttp://www.cs.indiana.edu/~webyrd/alphamk/alphamk.pdf ttp://kanren.sourceforge.net/ ParentheCというパーサー(c⇒scheme)を見つけました。 パターンマッチはolegのものを流用してます。 ttp://www.cs.indiana.edu/classes/b521/newpc/ParentheC.pdf ttp://www.cs.indiana.edu/classes/b521/notes.html Prologもどきと軽く思ってたけどReasoned Schemerって意外に深いのかな。 型推論のHindley-Milner type inferenceとかOCAMLみたいw
302 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 21:27:16 ] CPSによるパターンマッチのマクロ by Oleg Kiselyov. ttp://www.cs.indiana.edu/l/www/classes/b521/pmatch.pdf
303 名前:277 mailto:sage [2008/04/17(木) 23:07:24 ] >>233 の人ー、WiLiKiで、VC++の項目とか、 Windows向けインストーラの話とか、 色々更新されたから行っといでー。 釣りじゃないなら、話し合う絶好の機会だよー。
304 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 23:33:37 ] >>286 schemeの処理系を書く環境と schemeを書く環境はちょっと違うと思うぞ。
305 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 23:35:06 ] >>304 SchemeでSchemeを書けばいいジャマイカ
306 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 23:42:20 ] いまおれいいこといった と思ってるに違いない 空気読めない奴の発言は反吐が出る
307 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 23:49:17 ] >>306 何でそんな事でいきなりヒートアップするんだよ。 まあ、元の話題はC++にSchemeを組み込みたい、って話だったから、 >>286 のレスが明後日の方向を向いてるとは、俺も思うけどさ。
308 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 00:21:32 ] >>307 きっと胃が悪いんだよ<反吐が出る
309 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 00:53:51 ] SchemeでSchemeの処理系を書いてParentheCでCにポートすればC++にSchemeを組み込めるな。 Cで書かれたTinySchemeをマージするほうが簡単かもしれないがw
310 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 00:59:13 ] SchemeでSchemeの処理系を書くならLisp in Small Piecesのサポートページに色々情報がある。 ttp://pagesperso-systeme.lip6.fr/Christian.Queinnec/WWW/LiSP.html
311 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 01:12:59 ] なんか知らんが1人イラついてる人が居るな。 本当に自分の方がレベルが高いなら、 別に同じレベルと思われても構わないという態度で 淡々としてれば良いのさ。 あるいはそんなものスルーして自分の興味のある別の、 レベルの高い話を振ればいいよ。
312 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 01:15:14 ] (eval (read))ですね、わかります
313 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 01:16:33 ] >>278 本の中に動かない例があるけどw それ以外は全部動くよ。当然だけど。 DrSchemeのライブラリって面白いのが結構あるなぁ ttp://planet.plt-scheme.org/ HtDPやEOPLだけじゃなくSICPやSimplyのためのpltがちゃんとある。 でもLittle用はない。なくても動くから。
314 名前:sage [2008/04/18(金) 11:25:53 ] MOP レシピ集みたいなページはありませんか?
315 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 12:00:39 ] XML-MOPのコードはどうよ?
316 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 17:50:13 ] ソケット関係で挫折しそうなんだけど、苦労するといいことあるのかな 同じ内容のpythonのプログラムは動くこと確認したんだけど
317 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 18:04:18 ] 仕事じゃないなら好きにすればいい。
318 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 18:36:08 ] >>316 pythonでやれば?
319 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 01:40:56 ] www.cs.indiana.edu/classes/c311/pmatch.scm ここのpmatchを、define-macroで書き直すとどうなるでしょうか。 syntax-rules内の'...'の展開のされ方がよく判らんのです。 1つのパターン内に'...'が複数使われているのがあって、 これは残りの同一のパターンにマッチするという事なんでしょうか。 例えばこの部分とか ((_ (rator rand ...) cs ...) (let ((v (rator rand ...))) (pmatch v cs ...)))
320 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 01:53:38 ] それぞれに(別々に)マッチするって感じだね。 これだから衛生的なマクロは嫌いなのだ。
321 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 01:54:12 ] 質問が判りにくいですね。つまり上のrandの後の ...と、 csの後の ... の中身は違っててもいいのかどうか? ってことです。 '...'はその文脈の残り((car . cdr)のcdr)という意味しかない と考えてよいのでしょうか?
322 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 01:54:44 ] >>320 やはりそうですか。 だとするとまぎらわしいですね。
323 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 02:00:14 ] あと1つ確認したいのですが、>>319 の意味を変えずに ((_ (rator rand . rest1) cs . rest2) (let ((v (rator rand . rest1))) (pmatch v cs . rest2))) こういう風に書き直す事は可能でしょうか? リストじゃないからできないとか昔どこかで見たような気がするのですが。
324 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 02:21:56 ] rand ... の部分は0個でもマッチする rand . rest1 と書くと1個以上になるから意味が変わってしまう
325 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 02:30:39 ] そうだったんか… キモイなそれ
326 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 02:53:15 ] >>324 つまり書き直すなら ((_ (rator . rand) . cs) (let ((v (rator . rand))) (pmatch v . cs))) という事でしょうか?
327 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 03:00:02 ] そうだけど実際に使って確認するのが一番いいね (define-syntax hoge (syntax-rules () ((_ x ...) (list x ... x ...)))) デフォルトで ,@ がついてるようなイメージ (defmacro hoge (&rest x) `(list ,@x ,@x))
328 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 03:15:54 ] ((_ ((symbol value) ...) . body) ((lambda (symbol ...) . body) (+ value 1) ...)) とか、すごい展開をするんだよね、 ... って。
329 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 11:00:44 ] Commom LISPの方はSchemeのそういうコードを移植したい時 どうしてます?defmacroに変換するようなのないかな。
330 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 13:00:59 ] これですね Scheme Macros for Common Lisp www.ccs.neu.edu/home/dorai/mbe/mbe-lsp.html
331 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 22:50:21 ] TinyScheme ttp://tinyscheme.sourceforge.net/ TinyScheme Extensions ttp://heras-gilsanz.com/manuel/tsx.html OOPS Tiny Scheme Extension ttp://aladdin.sourceforge.net/oops.php TinyScheme for Zaurus ttp://www.alphageeksinc.com/tinyscheme/
332 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 22:53:44 ] >>309 ParentheCってlambdaすら処理できないみたいだよ。 これでCにポートしろなんて詐欺もいいとこ。
333 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 23:29:28 ] 使い方を理解しないで使うからジャマイカ?
334 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 23:56:39 ] トランスレータに使い方も糞もあるか
335 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 00:29:25 ] Scheme処理系は腐るほどある ライブラリも (C/C++なら) たくさんある 後はそれを組み合わせることを考えよう
336 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 00:34:22 ] コイツ>>334 、なんでこう喧嘩腰なんだろな。氏ね。
337 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 00:36:49 ] 糞チョンとシナチク氏ね。
338 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 01:09:37 ] ジャマイカ発言の後は荒れるんだよ。
339 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 01:32:46 ] とりあえず>>334 はいっぺん氏ね
340 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 03:36:46 ] >>333 あれって使い方でどうにかなるもんなの?
341 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 09:17:16 ] DRAKMAがubuntu 7.10 sbclのasdf-installでこけて止まる
342 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 12:11:37 ] >>341 SBCL 1.0.16 DRAKMA 0.11.5 ubuntu 7.10 で今試したけど大丈夫だった。
343 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 18:55:28 ] psyntaxがGaucheでも使えるって書いてあるけど、使い方わかんねー。 と思ってたら一発で使えるように同梱されたビルドがあった。 saito.s4.xrea.com/wiliki.scm?Gauche psyntax.exeってのがそうみたい。 exeにするのってどうやったんだろ?
344 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 20:35:00 ] どうでもいい
345 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 20:42:29 ] またexe厨か…
346 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 21:38:38 ] schemeでなくてlispでexe作ったら? newlispなんかだと簡単だよ SBClやCormanLispなんてのもあるけど
347 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 22:05:06 ] 別に言語まで変える必要もないと思うけど。 処理系のソースがあるんならschemeのソースを埋め込んで スタートアップで呼び出すようにすれば完成でしょ。 VMで動くようなのはコンパイル後のやつ入れとく。 これだからオプソって意味ないんだよな。
348 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 22:10:07 ] >>343 Gaucheのtarball落としたら中にgencompってのがある。 それでVM用コードにして適当なmainだけ書いてgccでコンパイル。
349 名前:デフォルトの名無しさん [2008/04/20(日) 22:24:02 ] 「プログラミングGauche」でSchemeデビューしようとしていきなりつまずいてます。 (define 'a #f) (set! a 1) (display a) これは gosh> quote gosh> 1 gosh> 1#<undef> となって動くんですが (define 'line #f) (set! line "foo\n") (display line) と変えるとエラーになります。 gosh> quote gosh> *** ERROR: symbol not defined: #<id 0x80eb100 user::line> Stack Trace: _______________________________________ gosh> *** ERROR: unbound variable: line Stack Trace: _______________________________________ どこが間違ってるんでしょうか?
350 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 22:32:39 ] ワロタ (define 'a (define 'line ここが間違ってる。それぞれ (define a (define line が意図するものだと思う。 (define 'a は (define quote (lambda(a)〜 と解釈される。
351 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 22:38:57 ] >>350 多分 *scheme* バッファの中で一度 (define a なんとか) を 実行してたから、a が定義されていたんですね。 *scheme* バッファを再起動してたら両方とも動かなくなって 気付いたと思うのですが。 ありがとうございました。
352 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 22:46:14 ] こういう記述間違いは処理系作者からは斜め上で予測不可能なんだよな。 quoteを再定義したいなんて思わんし、エラーにすべきか。
353 名前:デフォルトの名無しさん [2008/04/20(日) 23:51:39 ] Gauche scheme interpreter, version 0.8.3 [utf-8,pthreads] という環境で、 #!/usr/bin/gosh (define (main args) (while (not (eof-object? (set! line (read-line)))) (print line)) 0) というスクリプトを書いて euc-jp なテキストファイルを読み込ませたら ~$ gosh test.scm <text.txt *** READ-ERROR: Read error at "(stdin)":line 2: read-line: encountered illegal byte sequence: #*"\xc1\xcf\xc0\xa4\xb5\xad\t1\t1\t" Stack Trace: _______________________________________ 0 (read-line) At line 3 of "./test.scm" 1 (letrec ((do (lambda () (if (not (not (eof-object? (set! line (rea ... [unknown location] というエラーになりました。 euc-jpなままで読んでeuc-jpのまま書き出すにはどうすればいいのでしょうか?
354 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 00:20:03 ] >>353 gauche.charconv
355 名前:デフォルトの名無しさん [2008/04/21(月) 00:46:50 ] こうなりました。with-ports を使おうとしたら、 *** ERROR: unbound variable: with-ports となりました。何故? #!/usr/bin/gosh (use gauche.charconv) (define raw-in (current-input-port)) (define raw-out (current-output-port)) (define in (wrap-with-input-conversion raw-in "eucjp")) (define out (wrap-with-output-conversion raw-out "eucjp")) (define line #f) (define (main args) (while (not (eof-object? (set! line (read-line in)))) (display (string-append line "\n") out)) 0)
356 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 03:59:58 ] 何故?とか言う前にフォルダ内検索しろよ
357 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 05:06:07 ] slimeで対応する() に自動で色がつかなくなることがあるのだけど どうすればもどるの? 他に開いてるlispのバッファーを全部kill bufferすれば直るけど buff殺さないで直したい
358 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 05:38:24 ] >>357 どういう環境だとそうなるの? 漏れはそんな現象に遭遇したことない。 show-paren-modeがなんらかのタイミングでoffになったとか?
359 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 06:30:08 ] C-c C-p を何度もしてるといつのまにかなる
360 名前:デフォルトの名無しさん [2008/04/21(月) 08:21:48 ] >>356 のヒントをもとに検索してみた。 /usr/share/gauche/0.8.3/lib$ find . -type f | xargs grep with-ports /usr/share/gauche/0.8.3/lib$ なにもみつからなかった。
361 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 13:05:06 ] lispの場合、どのぐらいの大きさのprogramになったらファイルを分けるの?
362 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 14:45:07 ] 大きさを基準にしては分けない
363 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 16:52:39 ] >>361 package毎に分割しない?
364 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 19:36:23 ] 日本語の正規表現処理はできないと思っていいのでしょうか? sbclなのですがどの日本語コードを使うのがお勧めなのでしょうか?
365 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 20:48:56 ] cp932と言ってみるテスト
366 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 21:02:05 ] Schemeのオブジェクト指向 BOS (Bryan's Object System) MEROON ・・・Christian Queinnecによる。情報があまり無いけど有限要素法とかつかえるらしい。runge-kutta-4にあきたらやってみる。 SCOOPS (Scheme Object Oriented Programming System) Tiny CLOS ・・・なんとたったの850行!"The Art of the Metaobject Protocol"に出てくるsimple CLOSよりコンパクトな学習用。 YASOS (Yet Another Scheme Object System)
367 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 21:16:55 ] >>364 UTF-8で普通に使える処理系が多い(または増える)と思う
368 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 21:26:01 ] >>367 BOMあり?8Nでおk?
369 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 21:29:06 ] 処理系によるんじゃね?
370 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 21:49:45 ] >>355 with-portsは組み込み手続きだから見つからないって変だな。 プラットフォームは何? インストールはどうやった?
371 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 22:38:45 ] 一方exe厨はバイナリを配った
372 名前:355 mailto:sage [2008/04/21(月) 22:53:03 ] >>370 Debian sarge(3.1)で、aptitudeからインストールしました。 Gaucheのバージョン(0.8.3)が古過ぎるんでしょうか。 ~$ aptitude show gauche パッケージ: gauche ステータス: インストール済み 自動的にインストールされる: no バージョン: 0.8.3-3 優先度: 任意 分類: interpreters 保守担当者: Hatta Shuzo <hattas@debian.org> 展開サイズ: 4096k 依存: libc6 (>= 2.3.2.ds1-4) 提案: slib 推奨: r5rs-doc, gauche-doc 詳細: A Scheme implementation designed for script writing Gauche is a Scheme implementation developed to be a handy script interpreter, which allows programmers and system administrators to write small to large scripts for their daily chores. Quick startup, built-in system interface, native multilingual support are some of the author's goals. ~$ gosh -V Gauche scheme interpreter, version 0.8.3 [utf-8,pthreads] ~$ gosh -i gosh> with-input-from-port #<subr with-input-from-port> gosh> with-ports *** ERROR: unbound variable: with-ports Stack Trace: _______________________________________
373 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 00:09:50 ] Gaucheスレ別に立てて関係者がサポート汁。
374 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 00:28:56 ] 0.8.13のtypoかと思ってたらほんとに0.8.3か。古すぎるだけだと思う。 >>373 ごもっとも。WiLiKiの初心者の質問箱とかの方がふさわしい。
375 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 01:22:53 ] よくあるまとめwikiサイトみたいなの作れば良いのに。
376 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 01:25:54 ] Schemeのループの構文がわからないので教えてください。 下に書いたコードのbreakがうまく動かないのですがどう書いたら正しいのでしょうか? 大元はRnRSに載っているrunge-kutta-4の計算で、元々は無限ループです。 (letrec ( (n 100) (ls '()) (loop (lambda (s) (if (not (= n 0)) ((set! n (- n 1)) (newline) (write (head s)) (loop (tail s)))) (break the-states)))) (loop the-states))
377 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 01:45:25 ] ((set! こんな使い方はない (break breakはどこにも定義されてない
378 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 03:11:42 ] そのbreakはどこを参考にして持ち出してきたの?
379 名前:364 mailto:sage [2008/04/22(火) 10:06:06 ] CL-PPCREで日本語を含むパターンを見つけたかった ( scan [ホゲ(プログラム中に直接書いた日本語)]+ , ホゲ(ファイルから読み込んだ日本語) ) 同じ ホゲ という単語が入ってるのに認識しなかった
380 名前:364 mailto:sage [2008/04/22(火) 10:10:58 ] (print ホゲ(ファイルから読み込んだ日本語)) をslimeでC-C C-P すると動くが C-C C-Cすると動かない(sbcl) sbcl --load nihongo.lisp でも動かない
381 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 10:28:40 ] >>379 sbclはエンコーディング設定が良くわからないけど、 CLispではCL-PPCREで日本語が問題なく使えた。
382 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 14:23:17 ] 最近, あちこち SICP だらけなのは SICP の邦訳だ出たせい? こんなん有り難がって読むくらいだったら, ファイン万物理学読めよorz
383 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 14:36:12 ] 最近?
384 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 14:42:04 ] 両方読めばいいじゃん。
385 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 14:44:21 ] >>380 ファイルのエンコーディングもsbclの設定もどうなっているか分からないけど、 漏れの手元のutf-8に対応している処理系なら軒並みできている。 設定は各処理系のマニュアルを参照するのが一番確実。
386 名前:デフォルトの名無しさん [2008/04/22(火) 16:13:01 ] Expected class definition, found ( which may not be written here ってどういうエラー?
387 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 16:14:33 ] >>386 エラー原因書いてあるじゃん。
388 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 16:17:25 ] 教科書もなくはじめて実行してるのでわからないのです。 どっかのサイトからコピペしたらこういうエラーが
389 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 16:19:56 ] 何の処理系とかどういうコードかとかどのサイトからとかを書かないのは何故?
390 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 16:24:40 ] 例えばこういうのだったら (define my-abs (lambda (x) (cond ((< x 0) (-x)) ((= x 0) 0) (else x)))) 一番前の(にマーカがついててエラーメッセージがでます どのプログラムはってもこういうメッセージがでるんですけど
391 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 18:00:25 ] >>390 君の場合は、もう少し他人とのコミュニケーションの取り方から 勉強した方が良いよ。
392 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 18:00:35 ] >>389 人の善意を当てにしてるんじゃない? なんかそういう質問の仕方増えてきたよね。 ここ親切だからなー。
393 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 18:06:07 ] >>386 それただの英語だと思って読んでみな。
394 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 18:32:46 ] >>376-378 Schemeでbreakを使ってる例: ttp://www.geocities.co.jp/SiliconValley-PaloAlto/7043/ ttp://www.cs.grinnell.edu/~stone/events/scheme-workshop/quicksort.html ttp://merd.sourceforge.net/pixel/language-study/various/callcc/scheme.html (letrec ( (n 100) (loop (lambda (s) (if (not (= n 0)) (begin (set! n (- n 1)) (newline) (write (head s)) (loop (tail s))))))) (loop the-states)) これで動くでしょう。breakいらないよ。
395 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 18:43:09 ] >>376-378 ttp://practical-scheme.net/gauche/man/gauche-refj_102.html SRFI−1にもbreakは入っている。
396 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 18:44:59 ] でも、Schemeでbreakなんて使わないよなJK。www
397 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 18:45:02 ] まあ、紛らわしいよなw
398 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 20:28:16 ] runge-kutta-4を実際に走らせた。 ttp://codepad.org/gSEoxetW
399 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 22:10:25 ] >>382 Feynman Lectures on Computationも読んだけどけど何か? SICPにはrunge-kuttaが載ってるけどFeynmanには載ってない。 Feynman厨ウザ
400 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 22:45:12 ] 「Lisp文化にはLisp 1.5 → MacLisp → CommonLisp の『MIT系Lisp文化』・・・」という文書に出会った。 ほかの系統にはどんなのがあるのでしょうか?GNU系とかかな?w
401 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 22:51:50 ] それと対比するならInterlispで代表されるXerox系Lisp文化じゃね? GNUとか出てくるよりずっと前の話だよ
402 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 22:56:39 ] >>400 文化じゃなくて処理系のダイアグラムならあるよ www.softwarepreservation.org/projects/LISP/ www.dreamsongs.com/NewFiles/Hopl2Slides.pdf 文化って意味だと PARC が別系統の最有力なのかな? 良く知らんけど。
403 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 23:27:15 ] Lisp 1.5 Programmers Manual ttp://www.softwarepreservation.org/projects/LISP/book/LISP%201.5%20Programmers%20Manual.pdf
404 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 02:43:06 ] GNUなんてただのパクリ集団じゃん
405 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 02:46:52 ] よくわからないなら書かないほうがいいよ
406 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 03:22:16 ] いや、本質をよくとらえている。
407 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 03:24:13 ] 自画自賛乙
408 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 03:45:33 ] GNUを擁護したがるのは都合の良い解釈ばっかり見てる 最近知ったやつだけだろ
409 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 04:06:16 ] どうしてもGNUが叩きたいという奴以外にとってはどうでもいいだろ。
410 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 04:14:24 ] まぁ、GNU知りたての学生さんは 「GNUを叩いてる俺って、なんてわかってる奴なんだろう♪」 ってなもんだわな。
411 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 05:21:09 ] >>408 都合の良い解釈もなにも、GNUのポリシーは単純だし、 嫌ならGNUのソフトは使うべきじゃないってくらい単純な話だと思うんだよね。 スレ違だから、他んとこ行って欲しいんだけどw
412 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 05:25:58 ] なあ、既成の言語の機能をlispやschemeで 実装してしまうスレ立てないか?
413 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 06:30:06 ] >>412 lisp発祥でない機能で、面白いのってどういう機能があるんだろうね。 昔にlispでやってたら駄目なわけだよね?
414 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 07:27:59 ] なんで? 多分スレの目的は既成の言語を馬鹿にして諭す事だから lisp視点で面白いのかは判らないけど
415 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 08:00:15 ] >>412 こういうのか? (define alias define)
416 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 08:03:33 ] >>414 なんで、って言われても、そうなの? >413 まあ、なんらかの確信があるんだろうなwww
417 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 08:10:20 ] 人を見下したかのような人しかいないから、ぴったりだと思って
418 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 08:37:36 ] 回りくどいスレタイより「lisperが他の言語を馬鹿にして諭すスレ」 でいいよ。
419 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 09:18:52 ] …春だなあ。
420 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 09:20:04 ] 逆に馬鹿にされるのがオチ。
421 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 09:25:07 ] >>413 他言語の構文をread macroでやらかすスレとかならおもしろいかもね
422 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 09:38:51 ] >>417 コンプレックスがひどいと、そう見えるらしいよ。
423 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 09:41:28 ] >>404 元々、プロプラの物をオプンで代替する活動だからね 新規性が売りじゃないから GPL のラベルを付ければ何でもオケ
424 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 09:45:56 ] >>421 そいういうんだったら逆になんでもS式に変換してみてほしい。 S式Rubyなunacceptable acceptable lispとか見てみたい。
425 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 11:08:09 ] >>424 たしかRuby1.8では、ソースから変換した構文木を直接evalしてたはずだから それを括弧で囲めばS式になるんじゃないか?
426 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 13:16:50 ] 今のところRubyは食わず嫌いだが、ソースがS式になるなら使ってやってもいいな
427 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 14:29:05 ] RubyはMatzLispでPythonはGuidoLispなんだよ!とかなんとか
428 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 15:46:41 ] lispuser.netだかどこかで見せてくれた最高にキモイlispコードってのがまさにそれじゃないの?>> read macroでホゲ
429 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 18:13:54 ] 春めいた流れになってきたなw
430 名前:グラハム mailto:sage [2008/04/23(水) 19:14:42 ] 君達、LispとRubyのいいとこ取りの言語があるのを知らないのかい?
431 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 19:26:13 ] >>430 ポールグレアムなら知ってるが、あんた誰?w つpc11.2ch.net/test/read.cgi/tech/1202098949/
432 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 19:32:06 ] >>431 チャップマンかカーかどっちかじゃね?
433 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 19:40:11 ] ろくなライブラリーも無いうちからLispとRubyのいいとこ取りの言語を名乗るから評判悪いんだよなw むしろGaucheがArcのいいとこ取りすれば解決しそうだ。
434 名前:グラハム mailto:sage [2008/04/23(水) 19:58:23 ] 思い出せば私のエッセイもいつも最初は不評だったものだ。
435 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 20:04:33 ] 世界の料理ショーの人頑張ってライブラリ作れよw
436 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 20:05:27 ] ふーむ、、、何故あなたはそう確信するのですか?
437 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 20:07:01 ] ニヤニヤ
438 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 20:11:02 ] Matz>Graham だな。Lisp厨涙目w
439 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 20:12:05 ] 何の話だ
440 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 20:16:10 ] 他の言語にいちゃもんつけるお仕事、ご苦労様です Ruby厨の人も大変だな
441 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 20:18:03 ] Ruby厨さえ居なけりゃ、Rubyも良い言語なのにな。w
442 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 20:20:28 ] Lisp On Railsってあるの?
443 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 20:24:55 ] それなんて Kahua
444 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 21:04:35 ] Kent Dybvigの本と迷ったが一番定評があるコッチをやることにした。 Programmation fonctionnelle en scheme by Jean-Michel Hufflen, Masson, Paris, 1996 EUR 26.13 日本語版があればDybvigのを読みたかった。 読み終わったらStruktur und Interpretation von Computerprogrammenを読む予定。 でもLittleが流行ってるから先に読みたいな。でも英語がちょっと orz
445 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 21:11:00 ] 仏蘭西語と独逸語が堪能なら英語くらいなんとかなるだろ
446 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 21:34:28 ] 独仏国境だから二ヶ国語は馬鹿でも生活の中で自然に覚える。 英語は勉強が必要。でも勉強するならProgrammationの方が楽しい。
447 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 21:38:34 ] このスレに常駐したらLispとSchemeが堪能になるようなもんかw
448 名前:デフォルトの名無しさん [2008/04/23(水) 21:42:12 ] >>441 厨が集まる言語の条件: ・誰でも演習レベルまでは直ぐいける。 ・ハイレベルに移行するには何らかのセンスor適切なガイドが必要 ・エキスパートによって成果が出ている。
449 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 21:42:51 ] (* 164.042160 26.13) ⇒4286.421640799999 ぐは、結構高い!
450 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 22:41:47 ] >>400-402 Lispには大きく分けて東のMACLISP系と西のInterlisp系の二つの主流が存在。 MACLISP系:Lisp 1.5 → MacLisp → CommonLisp の『MIT系Lisp文化』 Interlisp系 :Interlisp-10→Interlisp-Dの対話型環境の『Xerox PARC系Lisp文化』 GNU EmacsはMacLispから分かれて来てるからMACLISP系に入れる。
451 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 22:59:22 ] schemeはその流れに入ってないの?
452 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 23:39:39 ] >>451 schemeは当初maclispで実装されたし、影響もそれなりにあるからmaclisp系っていえば そうとも言えるんじゃないかな。 MIT系であるのは確かだよね。
453 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 00:12:24 ] πの計算をストリームを使ってやってみた。 けど、なぜかあまり近づかない。なんでだろ。教えて。 ttp://codepad.org/0iV02ShG
454 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 00:13:28 ] 収束の遅い公式を使うからでしょ
455 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 00:16:33 ] >>454 ここでは10ぐらいでかなり近くなってる。どして? ttp://www.aomori-u.ac.jp/lab/inform/horibata/Scheme4.html
456 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 00:27:29 ] わかった方教えてください。あしたまた来ます。お願いします。
457 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 01:00:10 ] 最後の行ですね、わかります
458 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 01:21:21 ] >>457 有り難う御座いました。そのヒントで見つかりました。 ttp://codepad.org/sCNx3Zlh でも微妙に値が違ってるようです。3つ目の末尾から。 まだ、他にも間違いがあるんでしょうか? それとも精度の問題なんでしょうか。
459 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 01:31:18 ] write時の問題かな。2進的には同じ数値になってるんじゃないか?
460 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 01:33:38 ] 3.14159265358979 までは合ってる。 どう見ても問題ありません ><
461 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 01:40:10 ] やっぱり合ってそうですか。 計算以外のところが原因なのかな? ますます原因不明ですが今日のところは落ちます。 有り難う御座いました。またあした。
462 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 01:42:36 ] 11個目から+nan.0なのか。ストリームの意味無いじゃん。ちょっとワロタ。
463 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 01:58:14 ] 眠いしよく見てないんで直感だけで書くけど、 euler加速の計算のdenominatorが0になってるんじゃないの?
464 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 03:00:40 ] 無限ストリームでスマートに多倍長の演算でもしてるのかと思ったら 違うのかよ
465 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 04:23:07 ] Amazon.co.jpのプログラミングGaucheのカスタマーレビュー書いたバカ誰よ? On Lisp書いたの誰だかわからないようなのが何書いても信憑性ないんだけど。 折角いい本なのに余計なことしやがって(-_メ)
466 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 04:48:55 ] 藻前が書けばいいジャマイカ。 まあ、こんなところでちくちく攻撃してるやつの書評なんか読みたくもないがww
467 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 04:51:05 ] Amazonの書評って、分野によらず全然アテにならん。 鋭いこと書ける人は、ブログやら何やらで幾らでも「読者」を獲得できるこの時代、 大企業の威光を借りて「ここならボクちんの鋭いヒヒョウを皆に聞いてもらえるるる〜」と興奮しちゃうのは、 「自分では自分の鋭さを信じているが、どういうわけか(笑)他人にはそう思ってもらえない人」 だけになっちゃったんだ。
468 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 05:00:31 ] アテになるかはともかく、とっかかりぐらいにはなるぞ Amazonに限らずネットの情報なんて大部分はそんなものだろう
469 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 05:39:45 ] アマゾンレビューなぞ大抵は書きっぱなしの自己満だから気にすんな。
470 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 09:59:58 ] GaucheはSchemeの方言(笑) まあ尼のレビューの意義なんて内容よりも書く事自体にあるんじゃないのか。 文句があるならもっと良いレビューを書けばいいだけの話。
471 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 10:24:40 ] 自分が思ったことレビュー蘭に書いたくらいでこんだけ叩かれるんだから Gauche本のレビュー書くのも大変だよなwww 一体、誰が書けば納得すんだよw
472 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 10:36:43 ] 思ったことを書いたから叩かれるのではなく、その内容がアレだから叩かれるんだよ。 誰が書けば納得するのか、じゃなくて、誰が書いても、内容がまともなら納得するんだよ。 馬鹿じゃないことがその人にとって大変なことなら、レビューを書くのは確かに大変だ。
473 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 10:41:38 ] perl,ruby,pythonのようなLL系やHaskellやOCamlのようなML系も独自のmakefile形式を持ってるけど scheme版のmakeみたいなの無いの? S式で依存関係とか生成規則をガリガリ書けるようなもの
474 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 11:52:19 ] うちの研究室の先輩が作って代々受け継がれているものならある。 結構便利。公開してないけど。
475 名前:364 mailto:sage [2008/04/24(木) 13:12:26 ] >>380 自分のバグでした 正規表現で文字の置き換えしようとして 全角文字の後ろ半分のバイトだけ置き換えてたみたいです
476 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 13:13:21 ] >>473-474 lispで動くシェルじゃだめなの?
477 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 14:22:17 ] >>450 elispはshallow bindingじゃないから、 MacLisp系というのには難がある。 基本関数名もあまりMacLispMacLispしてない。
478 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 14:32:10 ] >>477 少なくとも、InterlispよりはMaclisp系だよ。とりあえず defun だし。w
479 名前:デフォルトの名無しさん [2008/04/24(木) 14:38:07 ] >>450 www.levenez.com/lang/ みたいに系統樹にしてみると面白いかもな
480 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 16:57:13 ] >>477 emacsのリファレンスにもmaclispに強く影響を受けてるって書いてるじゃん。 rmsがmaclispで育ってるんだから当然っていえば当然だと思うけど…。
481 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 18:48:35 ] >>479 MirandaとかErlangとかLuaとかAliceとかCgとかHyperTalkとか載ってない。 orz´
482 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 18:51:13 ] >>462-464 それSICPに載ってるやん
483 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 18:54:59 ] >>479 ,>>481 最近話題のOzもない。Orz
484 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 20:10:19 ] >>482 p.334からp.337の "3.5.3 Exploiting the Stream Paradigm" !
485 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 20:31:56 ] >>484 日本語版ではp.198からp.200にあった。
486 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 21:19:45 ] Gauche本を読んでcontinuationを理解した春の夕暮れ。 今日は良い日だった。
487 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 21:24:03 ] 希望の精度まで計算するstream-limitを使った計算例。 >>484-485 に書いてあるsqrtの計算をやってみた。πの計算にも使えるハズ。ヤッテナイケドw ttp://codepad.org/8guLZUTv
488 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 21:34:38 ] >>478 適当なこと言いました。やってみたら計算負荷が高いようです。timeoutしましたw ttp://codepad.org/a4j62JqK
489 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 21:36:23 ] ここは学坊しかいないのか?
490 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 21:55:46 ] いや、声が大きいだけ
491 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 22:16:21 ] ln2 の計算。ループ10回で精度ギリギリなのはおんなじ。 ttp://codepad.org/sZyPIi4v
492 名前:デフォルトの名無しさん mailto:sage [2008/04/25(金) 00:24:38 ] 今日の勉強の成果。SICP p.328-334 Ex 3.59 exp-series cosine-series sine-series Ex 3.60 mul-series Ex 3.61 invert-unit-series Ex3.62 div-series tan-series ttp://codepad.org/Lh7m712l
493 名前:デフォルトの名無しさん mailto:sage [2008/04/25(金) 00:44:39 ] Exploiting the Stream Paradigm ! >>398 runge-kutta ttp://codepad.org/gSEoxetW >>458 Pi ttp://codepad.org/sCNx3Zlh >>491 ln2 ttp://codepad.org/sZyPIi4v >>492 exp-series cosine-series sine-series tan-series ttp://codepad.org/Lh7m712l
494 名前:デフォルトの名無しさん mailto:sage [2008/04/25(金) 01:53:53 ] >>473 ASDFをGaucheに移植すればいいんジャマイカ?
495 名前:デフォルトの名無しさん mailto:sage [2008/04/25(金) 01:59:21 ] ASDFはCLだす
496 名前:デフォルトの名無しさん mailto:sage [2008/04/25(金) 02:37:36 ] だから移植なんじゃねーの?
497 名前:デフォルトの名無しさん mailto:sage [2008/04/25(金) 02:50:04 ] まずGaucheでCommon Lispを書いて、その上で動かせば桶
498 名前:デフォルトの名無しさん mailto:sage [2008/04/25(金) 03:09:06 ] よしまかせた!