[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2chのread.cgiへ]
Update time : 05/09 20:08 / Filesize : 254 KB / Number-of Response : 1002
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Lisp Scheme Part26



1 名前:デフォルトの名無しさん mailto:sage [2009/04/24(金) 19:12:39 ]
※ ここはCommon Lisp、SchemeをはじめとするLisp族全般のスレです ※

■過去スレ
 Part25: ttp://pc12.2ch.net/test/read.cgi/tech/1231856193/
 Part24: ttp://pc11.2ch.net/test/read.cgi/tech/1224939205/
 Part23: ttp://pc11.2ch.net/test/read.cgi/tech/1215875388/
 Part22: ttp://pc11.2ch.net/test/read.cgi/tech/1211381920/
 Part21: ttp://pc11.2ch.net/test/read.cgi/tech/1207300697/
 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://pc11.2ch.net/test/read.cgi/tech/1151025773/
 Part14: ttp://pc11.2ch.net/test/read.cgi/tech/1132275726/
 Part13: ttp://pc11.2ch.net/test/read.cgi/tech/1115901841/
 Part12: ttp://pc11.2ch.net/test/read.cgi/tech/1100229366/
 Part11: ttp://pc11.2ch.net/test/read.cgi/tech/1091456033/
 Part10: ttp://pc11.2ch.net/test/read.cgi/tech/1075630259/
 Part09: ttp://pc11.2ch.net/test/read.cgi/tech/1069594582/
 Part08: ttp://pc5.2ch.net/tech/kako/1058/10582/1058263391.html
 Part07: ttp://pc5.2ch.net/tech/kako/1042/10421/1042167213.html
 Part06: ttp://pc3.2ch.net/tech/kako/1031/10315/1031560687.html
 Part05: ttp://pc3.2ch.net/tech/kako/1023/10230/1023091882.html
 Part04: ttp://pc.2ch.net/tech/kako/1016/10162/1016211619.html
 Part03: ttp://pc.2ch.net/tech/kako/1008/10082/1008220265.html
 Part02: ttp://pc.2ch.net/tech/kako/1002/10025/1002584344.html
 Part01: ttp://piza2.2ch.net/tech/kako/987/987169286.html

■テンプレート置き場
 ttp://wiki.fdiary.net/lisp/ (id:guest pass:cl)

411 名前:デフォルトの名無しさん mailto:sage [2009/06/10(水) 00:42:11 ]
>>409
うまい

412 名前:デフォルトの名無しさん mailto:sage [2009/06/10(水) 01:03:52 ]
>>410
それでも括弧の奏でる旋律を感じたことがあるはずだ

413 名前:デフォルトの名無しさん mailto:sage [2009/06/10(水) 01:06:08 ]
>>409
それニダ!!

414 名前:デフォルトの名無しさん mailto:sage [2009/06/10(水) 06:58:05 ]
最近楽譜見るとダカーポやセーニョダルセーニョが
call/ccに脳内変換されるようになってきた。

415 名前:デフォルトの名無しさん mailto:sage [2009/06/10(水) 11:13:34 ]
楽譜も読めないし継続がいまだにわからない俺が来ましたよ。
やっぱりLisperならヒップホップだよね?

416 名前:デフォルトの名無しさん mailto:sage [2009/06/10(水) 11:36:44 ]
そろそろ雑談スレでも立てようか

417 名前:デフォルトの名無しさん mailto:sage [2009/06/10(水) 12:40:43 ]
どっかでgsllが遅いって言ってた人いたけど
行列の配列のcreate deleteをlisp側でやると遅いってことでいいの?
cffi使うなら全部cで処理したほうがましってこと?

418 名前:デフォルトの名無しさん mailto:sage [2009/06/10(水) 20:10:14 ]
scheme/gaucheでscanlに相当する関数ってありますか?

419 名前:デフォルトの名無しさん mailto:sage [2009/06/10(水) 20:12:42 ]
>>416
こっちを再利用してもいいんじゃない?
立ててもいいと思うけど
【GNU】スクリプト言語 Guile【scheme】
pc12.2ch.net/test/read.cgi/tech/1239985829/



420 名前:デフォルトの名無しさん mailto:sage [2009/06/10(水) 21:48:44 ]
つくるなら、
【色即是空 空即是色】Lisperのぼやきサロン【Lisp S式】
  とでもしといて w w w

421 名前:デフォルトの名無しさん mailto:sage [2009/06/11(木) 01:03:20 ]
マ板に雑談向きなスレあったよーな

422 名前:デフォルトの名無しさん mailto:sage [2009/06/11(木) 01:06:33 ]
>>420
なんでLispスレ限定なんだ

423 名前:デフォルトの名無しさん mailto:sage [2009/06/11(木) 01:18:51 ]
マ板のスレってこんなのしかないよw
Lisperこそ真のプログラマーよ!!
pc11.2ch.net/test/read.cgi/prog/1175791979/
彼氏にするならだんぜんLisp使いかなぁ
pc11.2ch.net/test/read.cgi/prog/1241612383/

424 名前:デフォルトの名無しさん mailto:sage [2009/06/11(木) 07:30:10 ]
>>422
schemerにとって不満? lisperと書けば含まれていると思ったけど。


425 名前:デフォルトの名無しさん mailto:sage [2009/06/11(木) 08:44:11 ]
そういう意味じゃないと思うんだ。

426 名前:デフォルトの名無しさん mailto:sage [2009/06/11(木) 10:36:16 ]
SchemeはLispに非ず、Algolなのです! by 黒ちゃん

427 名前:デフォルトの名無しさん mailto:sage [2009/06/11(木) 10:54:23 ]
俺としては雑談スレというか、俺Lispの細かい仕様を相談したり
プチ自慢したり遍歴ダベったりするスレが欲しいかな。
少々次元が低くても全然構わない空気の。

428 名前:デフォルトの名無しさん mailto:sage [2009/06/11(木) 12:34:42 ]
Lisperこそ真のプログラマーよ!!

を乗っ取りする


429 名前:デフォルトの名無しさん mailto:sage [2009/06/11(木) 21:06:16 ]
スレ乱立しすぎだろ。Guileスレも結局、単発で終わったし。
本スレも過疎気味なのに、さらに分離すると…追っかけるの面倒



430 名前:デフォルトの名無しさん mailto:sage [2009/06/11(木) 21:22:02 ]
おまいらたまにはArcスレの事も思い出してやってください。

431 名前:デフォルトの名無しさん mailto:sage [2009/06/11(木) 21:23:45 ]
>>427
過疎っているのと、リアルが忙しくてかまっていられないだけだと思うよ。
低次元の話題は大歓迎なんだが。

というか、(Python) --.> guile --> lispと移行しようとがんばっているんだけど、sbclのasdf on gentooが動かなくて、パッケージとか、ライブラリが使えねーww
必要なログとか、晒すんで助けてください。

元カノのPython子とよりを戻そうかと真剣に考えたくなる。
でも、長年連れ添うなら、Lispのマクロって便利そうだよね。emacsのslimeも軽くて便利そうだし。

432 名前:デフォルトの名無しさん mailto:sage [2009/06/11(木) 21:55:30 ]
移行とかいわず、全部使えばいいと思うよ。
どんなエラーでるか、入門Common Lispスレのほうで晒してくれたらみたげるよ。

俺は仕事でSQLをいじるとPrologがいいなぁと思い、JavaをいじるとLispがいいなぁと思う。
しかしPrologをいじると、RDBMSのイロイロやっぱ必要だよな…と思い直し、
Lispをいじると言語以外のライブラリや商用サポートで現実に引き戻される。結局どれも捨てられない。

433 名前:デフォルトの名無しさん mailto:sage [2009/06/11(木) 22:06:01 ]
Gaucheを使っているのですが、
schemeのプログラムってどういう風に配布すれば良いのでしょうか?
ユーザーにgaucheやパッケージ依存ならパッケージのインストールまでさせるべきでしょうか?
すこし、敷居が高い気がするのですが...

それとも、./configure && make && make installでバックグラウンドでgoshやパッケージを
インストールする方式なのでしょうか?
みなさまの方法をご教授ください。

434 名前:デフォルトの名無しさん mailto:sage [2009/06/11(木) 22:06:54 ]
並列処理でバーッと行こうぜバーッと。

435 名前:デフォルトの名無しさん mailto:sage [2009/06/11(木) 22:12:02 ]
>>433
NSISでインストーラーを書いてGaucheごと配布

436 名前:デフォルトの名無しさん mailto:sage [2009/06/11(木) 22:44:57 ]
>Lispをいじると言語以外のライブラリや商用サポートで現実に引き戻される。結局どれも捨てられない。
python on lisp

437 名前:デフォルトの名無しさん mailto:sage [2009/06/11(木) 23:34:04 ]
>>433
そういう用途ならPLTオススメ。

Gaucheでやるなら、>>435みたいに、本体ごと配布するのが面倒がない。
バージョンの違いとかで悩まなくていいし。

438 名前:デフォルトの名無しさん mailto:sage [2009/06/11(木) 23:52:58 ]
Franzとか商用サポートあるじゃないか!
仕事ではとても言い出せないけど

439 名前:デフォルトの名無しさん mailto:sage [2009/06/12(金) 00:20:36 ]
>>432
Common lispスレのほうに投稿しておきました。よろしくお願いします。
>移行とかいわず、全部使えばいいと思うよ。
サンデープログラマなんでさすがに無理です。でも、毛嫌いしているわけでなく、やるしかないような状況になったらやるんですが。
>Lispをいじると言語以外のライブラリや商用サポートで現実に引き戻される。結局どれも捨てられない。
時間に特別制約なくて、Lispでもあったほうが便利ならLisperなら単機能・簡易版でいいので作りたいところですね。(一応、理想だけは高く)
lispって糊言語的な使われ方って多いんですか?



440 名前:デフォルトの名無しさん mailto:sage [2009/06/12(金) 01:20:00 ]
>□Stalin: 激烈な最適化を施す処理系。人間の書くCコードより速いという噂。
> ttp://cobweb.ecn.purdue.edu/~qobi/software.html

ここにおいてあるQobiといかいうのscheme -> c 変換なのかな?
他にもいろいろおいてあるけど便利そうなの結構ありそう

441 名前:デフォルトの名無しさん mailto:sage [2009/06/12(金) 02:25:36 ]
雑談も良いけど、隔月刊か季刊でいいから丸ごとLispだけの雑誌が欲しいなぁ。

シローさんが連載持ったり、グレアムおじさんの文を翻訳したのとかも載せたり。
黒田さんの「黒板に書け!」みたいな記事とか。
中村正三郎さんがAS/400絶賛する連載記事・・・ってこれは関係ないかw

442 名前:デフォルトの名無しさん mailto:sage [2009/06/12(金) 11:51:46 ]
Scheme->C というコンパイラがあって、Stalin も最初はそれで記述されてた
たぶんそのコンパイラ用のライブラリかと

443 名前:デフォルトの名無しさん mailto:sage [2009/06/12(金) 12:02:42 ]
schemeでslime並みにいたりれりつくせりな環境ってどれになるんでしょうか?

444 名前:デフォルトの名無しさん mailto:sage [2009/06/12(金) 12:08:50 ]
>>443
vi

445 名前:デフォルトの名無しさん mailto:sage [2009/06/12(金) 17:01:39 ]
>>443
マジレスすればPLTSchemeになるんじゃないかと思う。

446 名前:デフォルトの名無しさん mailto:sage [2009/06/12(金) 18:03:01 ]
>>442
どこかでschemeにswank移植してたぞ

447 名前:デフォルトの名無しさん mailto:sage [2009/06/12(金) 19:23:16 ]
雑誌Lisp 100% が欲しいってか?rubyあたりではそんなムックは出てたね。
渋谷の連中に期待かな。


448 名前:デフォルトの名無しさん mailto:sage [2009/06/12(金) 21:35:07 ]
渋谷の連中って何

449 名前:デフォルトの名無しさん mailto:sage [2009/06/12(金) 22:18:01 ]
shibuya.lisp



450 名前:デフォルトの名無しさん mailto:sage [2009/06/12(金) 23:16:11 ]
創刊当時の月刊I/Oみたいな雰囲気でLisp/Schemeの記事満載の雑誌が欲しい。
無いもんはゲリラ的に自分たちで作っちゃうもんね〜というノリが懐かしい。
「Schemeで人工知能を」「Lispでロボット犬を制御する」なんてタイトルでさ。


451 名前:デフォルトの名無しさん mailto:sage [2009/06/12(金) 23:32:19 ]
shibuya.lispで会誌みたいなのをつくって見れば良いのでは
開催時に配布とか、プログラマの人も暇じゃないけど
今のshibuya.lispの開催間隔を見る限り記事一つ二つなら
かけるぐらいの期間だろうから

452 名前:デフォルトの名無しさん mailto:sage [2009/06/12(金) 23:51:12 ]
>>450
> 創刊当時の月刊I/Oみたいな雰囲気でLisp/Schemeの記事満載の雑誌が欲しい。
月刊I/Oみたいな雰囲気というのがよくわからないけど。
雑誌の意味ってどのくらいあるの? すごくがんばって、季刊誌だろうから、タイムリーさは狙えないよ。

Webのほうがタイムリーさがあるから、Webでいいし。
本という形式にこだわるなら、専門書でいいと思うしなあ。


やっぱり、あれか、ノスタルジーというやつか。

453 名前:デフォルトの名無しさん mailto:sage [2009/06/13(土) 00:15:26 ]
連載「Lispで書くMultics」

454 名前:デフォルトの名無しさん [2009/06/13(土) 00:33:26 ]
>>452
興味の無い記事、専門外の記事も一緒に付いてくるのが技術雑誌のいいところなんだよ

455 名前:デフォルトの名無しさん mailto:sage [2009/06/13(土) 00:40:28 ]
Lispの雑誌なんて読んでたら女の子がうざいほど寄ってきて困るだろ。

456 名前:デフォルトの名無しさん mailto:sage [2009/06/13(土) 00:52:26 ]
>>454
ものすごく質が高ければ買うかもしれないけどなあ。

最近は、定期購読している雑誌はないし、新聞もWebで済ませちゃっているなあ。
本当は紙媒体で読みたいんだけどなあ。

457 名前:デフォルトの名無しさん mailto:sage [2009/06/13(土) 01:06:38 ]
興味なくても専門外でも、専門技術の記事で埋まってる雑誌なら喜んで買うぜ。
半分広告な雑誌ならノーサンキュー。

458 名前:デフォルトの名無しさん mailto:sage [2009/06/13(土) 01:22:58 ]
Lisp関連の学会の論文集読め。

459 名前:デフォルトの名無しさん mailto:sage [2009/06/13(土) 01:48:35 ]
論文集ほど堅くなくってのがミソなんじゃないかな?
コミケとかで売ってくれないかなぁ。



460 名前:デフォルトの名無しさん mailto:sage [2009/06/13(土) 02:12:56 ]
comp.lang.lispで十分じゃね
しかも雑誌みたいに広告もある

461 名前:デフォルトの名無しさん mailto:sage [2009/06/13(土) 03:14:28 ]
Oh!MZやOh!Xはいい雑誌だったな
これでレポートが書けるとか言われたもんだ
今はこんな雑誌出せないのかなぁ

462 名前:デフォルトの名無しさん [2009/06/13(土) 08:15:48 ]
最近、BeagleBoard($149)を使ってるんだがGuileが標準で入ってる。

OSはDebian/Ubuntu/Handheld Mojo/Angstrom/Androidのどれでもおk。
エディタはもちろんVim。
消費電力はたったの2W。Atomでも30Wぐらい喰うのを考えると信じられない。
ファンレスなので静か。

dkc1.digikey.com/us/en/mkt/beagleboard.html

知らない人は日経Linuxの7月号を読んでみて。

463 名前:デフォルトの名無しさん mailto:sage [2009/06/13(土) 10:28:00 ]
副作用がある関数の名前に ! を付けるのはナイスな慣習だと思うよね?
マクロも名前だけでパッと見で分かるようにしたらいいと思うんだ。
だって、関数と違って引数が評価されないかもしれないんだよ。
例えば先頭を大文字にするとかがいいかな。

464 名前:デフォルトの名無しさん mailto:sage [2009/06/13(土) 10:54:20 ]
季刊 Lisp!

465 名前:デフォルトの名無しさん mailto:sage [2009/06/13(土) 11:42:37 ]
>>443
quack.el

466 名前:デフォルトの名無しさん mailto:sage [2009/06/13(土) 12:21:12 ]
活動資金のない渋谷には本は難しいんじゃないかな。鯖とも手弁当なんでしょ。

>>463
年季入ったLisperに言わせると、!や?は発音にこまるからという話も。
「reverse!」「reverseね」「ちがうreverse!」「reverse?」「えっ」「えっ」

467 名前:デフォルトの名無しさん mailto:sage [2009/06/13(土) 13:19:07 ]
! 「あんせーふ」
? 「ぷれでぃけーと」

reverse! 「りばーすあんせーふ」
reverse? 「りばーすぷれでぃけーと」

468 名前:デフォルトの名無しさん mailto:sage [2009/06/13(土) 13:36:48 ]
>>466
手弁当のほうが何の制約もなく、無闇に成果を出す必要がなくていいと思うが。

469 名前:デフォルトの名無しさん mailto:sage [2009/06/13(土) 13:40:10 ]
let* 「れっとあぬす」



470 名前:デフォルトの名無しさん mailto:sage [2009/06/13(土) 13:42:16 ]
記事すらほとんどないのに
Lispの専門誌なんて出るわけないだろw

471 名前:デフォルトの名無しさん mailto:sage [2009/06/13(土) 13:50:21 ]
*はスターって読んでる

472 名前:デフォルトの名無しさん mailto:sage [2009/06/13(土) 13:51:21 ]
話題なんていくらでもある。


473 名前:デフォルトの名無しさん mailto:sage [2009/06/13(土) 14:02:24 ]
論文みたいにかっちり書かなくてもいいなら記事はあるでしょ。


474 名前:デフォルトの名無しさん mailto:sage [2009/06/13(土) 14:03:35 ]
記事にしないと話題にならない。

475 名前:デフォルトの名無しさん [2009/06/13(土) 14:56:01 ]
すいません、プログラッミングGaucheで勉強しよと思ってるんですが、
最初の方でEmacsでGaucheを使うっていうとこで
ホームディレクトリに .emacs ファイルを作ったんですができません
↓どこかまちがっていますでしょうか?

(modify-coding-system-alist 'process "gosh" '(utf-8 . utf8))

(setq scheme-program-name "gosh -i")
(autoload 'scheme-mode "cmuscheme" "Major mode for Scheme." t)
(autoload 'run-scheme "cmuscheme" "Run an inferior Scheme process." t)

(defun scheme-other-window ()
"Run shceme on other window"
(interactive)
(switch-to-buffer-other-window
(get-buffer-create "*scheme*"))
(run-scheme scheme-program-name))

(define-key global-map
"\C-c s" 'scheme-other-window)

476 名前:デフォルトの名無しさん mailto:sage [2009/06/13(土) 14:59:25 ]
何ができませんのか?

477 名前:デフォルトの名無しさん mailto:sage [2009/06/13(土) 15:04:44 ]
>>476さん
C-c s で、そんなコマンドありませんって言われますorz

478 名前:デフォルトの名無しさん mailto:sage [2009/06/13(土) 15:14:31 ]
"\C-c s"ならC-c スペース sって意味になるから
多分C-c スペース sと入力すれば動く筈
C-c sにしたけりゃ"\C-c s"を”\C-cs"にしてみて

479 名前:デフォルトの名無しさん mailto:sage [2009/06/13(土) 15:35:25 ]
>>478さん
ありがとうございます!!
御指摘いただいた箇所をなおしたらできました。
あと、先頭のutf-8のとこもおかしかったみたいでそこがよく分かりません
まじ感謝です。



480 名前:デフォルトの名無しさん mailto:sage [2009/06/13(土) 16:11:07 ]
>>479
もしWindowsならGaucheboxを使えばいいと思うよ。
sourceforge.net/project/showfiles.php?group_id=25227&package_id=275266&release_id=639668


481 名前:デフォルトの名無しさん [2009/06/13(土) 16:18:01 ]
A*アルゴリズムを使いたいけど実装方法がわかりません。
誰か代りに実装して


482 名前:デフォルトの名無しさん mailto:sage [2009/06/13(土) 23:23:57 ]
AIMAのサンプル見れ

483 名前:デフォルトの名無しさん mailto:sage [2009/06/14(日) 04:38:57 ]
(define a '(1 2 3))
と定義して
(list 0 `,@a)
は駄目なんですね。できてもよさそうなんだけどなぁ

484 名前:デフォルトの名無しさん mailto:sage [2009/06/14(日) 06:33:38 ]
@ってなに?

485 名前:デフォルトの名無しさん mailto:sage [2009/06/14(日) 07:06:45 ]
`(list 0 ,@a)






父さん・・・酸素欠乏症に罹って・・

486 名前:デフォルトの名無しさん mailto:sage [2009/06/14(日) 07:13:51 ]
>>483
perl では list(0, @a) とできますが
lisp 系では (apply list 0 a) と書きますね

487 名前:デフォルトの名無しさん mailto:sage [2009/06/14(日) 12:05:22 ]
>>486
あ、こういうときapplyか。ありがとう。
でも apply より (list 0 `,@a) の方が直截的で、何がやりたかったか明確じゃないですか。
これを許すとまずい事があるのかな。
apply や funcall 使うのがあんまり美しくないから
common lisp より scheme って人も結構いると思うんだよなぁ。

>>485
それだと (list 0 1 2 3 4) が返ってきちゃうよ。

488 名前:デフォルトの名無しさん mailto:sage [2009/06/14(日) 12:17:18 ]
Common Lispでやりたいのか、Schemeでやりたいのか
どういう結果が欲しいか
はっきり書かないと

489 名前:デフォルトの名無しさん mailto:sage [2009/06/14(日) 12:26:27 ]
>>488
ごめんなさい、最初に書いてなかった。schemeです。



490 名前:デフォルトの名無しさん mailto:sage [2009/06/14(日) 12:36:51 ]
>>487
> でも apply より (list 0 `,@a) の方が直截的で、何がやりたかったか明確じゃないですか。

そうか?

491 名前:デフォルトの名無しさん mailto:sage [2009/06/14(日) 12:41:51 ]
(0 1 2 3) がほしかったら`(0 ,@a)だな


492 名前:デフォルトの名無しさん mailto:sage [2009/06/14(日) 12:42:29 ]
俺は`(0 ,@a)ってやるな
しかし、applyこんな風に使えるんだな

493 名前:デフォルトの名無しさん mailto:sage [2009/06/14(日) 12:50:34 ]
ちなみに
`(0 ,@a) == `(0 . ,a) == (cons 0 a) == (apply list 0 a)
パイソニアンが見たら青筋たてそうだな(笑

494 名前:493 mailto:sage [2009/06/14(日) 12:55:30 ]
あ、見た目が同じだけどリストの構造は違うものになるんだった。すまん。

495 名前:デフォルトの名無しさん mailto:sage [2009/06/14(日) 13:17:38 ]
>>491-492
リストが欲しい時はそれが自然ですね。
他の関数の引数に展開したい時は apply で我慢するかぁ。

>>490
違う?要は apply があんま好きじゃないってだけなんだけど。
scheme だと ((car (list + -)) 1 2) ができるって知った時はナイス!って思った。

496 名前:デフォルトの名無しさん mailto:sage [2009/06/14(日) 13:26:59 ]
>>494 仲間はずれはapplyで作ったやつ?

497 名前:デフォルトの名無しさん mailto:sage [2009/06/14(日) 17:07:32 ]
(append '(0) a)

498 名前:デフォルトの名無しさん mailto:sage [2009/06/14(日) 21:49:52 ]
>>495
perl知らないせいか (list 0 `,@a) じゃ何がやりたかったかさっぱりわからなかった。
aの中身は実行時にしか決定されないからコンパイルするとlistでなくapplyが
呼ばれる。ソースコードに書いていないのに。むしろわかりにくい。

499 名前:デフォルトの名無しさん mailto:sage [2009/06/14(日) 22:53:09 ]
apply使うと損した気分になったり不愉快になる



500 名前:デフォルトの名無しさん mailto:sage [2009/06/14(日) 23:12:44 ]
病院へ池

501 名前:デフォルトの名無しさん mailto:sage [2009/06/14(日) 23:29:34 ]
Applyが嫌いならMicroSoftyなら良いのか?

502 名前:495 mailto:sage [2009/06/14(日) 23:53:15 ]
>>498
俺だって perl 知らないよ。

えー、分かりやすいよ。
apply って大体にして、scheme では変数をリストの先頭に置いて関数を呼び出せるんだから
実質、この用途 (リストに格納されている要素を引数として関数に渡す)
のためだけの関数でしょ?
`( ,@a) で展開できるんだから `,@a も展開できたっていいじゃん。
apply なんて不要になるよ。

503 名前:デフォルトの名無しさん mailto:sage [2009/06/15(月) 00:15:45 ]
quasiquote をとびこえて更に外側の括弧が表すリストの一部になるというのはダサいだろ。
list の場合だったらともかく、マクロだったらどう展開されるやら想像がつかん。
かと言ってマクロ展開より先にスプライシングするわけにもいかんし。

504 名前:デフォルトの名無しさん mailto:sage [2009/06/15(月) 00:30:36 ]
>>503
quasiquote の展開はリード時にやんなきゃ駄目じゃない?
とはいえリード時には関数かマクロかわからないしなあ。

確かに、単純な場合にはよさげにみえるけど、
ちょっと入り組んだことになっただけで落とし穴だらけになりそうだね。


505 名前:デフォルトの名無しさん mailto:sage [2009/06/15(月) 00:41:00 ]
aがリストかどうかもわからん

506 名前:502 mailto:sage [2009/06/15(月) 01:03:52 ]
>>503
あー、マクロ内で使われるとまずいのね。確かに。
apply だったら自動的に関数only だからそこは大丈夫だったのか。
んじゃ、マクロ内では `,@ は自粛でいいじゃんw。駄目?
だって apply も 関数にしか適用できないんだからお相子だって

507 名前:502 mailto:sage [2009/06/15(月) 01:08:33 ]
>>505
それはこれに限らず ,@ 全てが受ける制約じゃん

508 名前:デフォルトの名無しさん mailto:sage [2009/06/15(月) 01:10:58 ]
まあ、おそらく自分よりはるかに頭の良い人が必要だと思って
残してある機能なわけだから、、、と俺なら考えるかな。

509 名前:デフォルトの名無しさん mailto:sage [2009/06/15(月) 01:23:33 ]
>>506
そろそろ実装方針を示してはくれんか。



510 名前:デフォルトの名無しさん mailto:sage [2009/06/15(月) 02:28:17 ]
>>508
paul grahamはこう言ってるよ。

tamo.tdiary.net/20080304.html#p01
> たとえば cond マクロ。こいつには Lisp 1 からこのかた余計な括弧がびっしり付いてきて、
> それを誰も何ともしてこなかった。
> if と cond を押しつぶしてひとつのオペレータにする Arc の技も、
> 誰かがとっくに見つけていたっておかしくなかったのだが、 間違いなくそんな周知の事実はない。

www010.upp.so-net.ne.jp/okshirai/arcll1-j.html
> いくぶん躊躇しながらも、彼は伝統的なLisp
> のletが嫌いだ、なぜならletによって一段インデントが深くなるからだ、と認めた。彼
> が躊躇したのは、letは「正しい」ことだと原則としてはわかっているからだ。この点
> では、「誰にとって正しいの?」と尋ねなくてはならない。なぜなら彼よりも実際頭の
> よいプログラマがいるとは思えないからだ。

>>503
> quasiquote をとびこえて更に外側の括弧が表すリストの一部になるというのはダサいだろ。
一理あるかもしれない。見方によっては荒っぽくて汚い。

>>509
実装方針?quasiquoteをいじればできるのかな。どうすりゃできるだろ

511 名前:デフォルトの名無しさん mailto:sage [2009/06/15(月) 02:45:01 ]
practical-scheme.net/wiliki/wiliki.cgi?Lisp%3AS%E5%BC%8F%E3%81%AE%E7%90%86%E7%94%B1
このページのapplyの項と同じ話題かな?






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<254KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef