Gauche > Archives > 2011/03/27

2011/03/27 06:36:32 UTCrokujyouhitoma
#
> shiroさん
#
返信遅れてすみません。ログ読みました。http://practical-scheme.net/chaton/gauche/a/2011/03/11#entry-4d7a91a3-aafad
#
ありがとうございます!
2011/03/27 06:42:21 UTCrokujyouhitoma
#
koguroさん
#
この案で試してみます!http://practical-scheme.net/chaton/gauche/a/2011/03/11#entry-4d7a91a3-aafad
#
みなさんありがとうございます!!
2011/03/27 11:14:59 UTCshiro
#
CLでinfix記法 http://my.opera.com/zeptometer/blog/2011/03/27/cl しかしinfixで書けるようにしてもプログラムの中で数式が出てくる部分って案外少なくて、その少ない機会に記法を切り替えるのが案外面倒で結局使わなくなるという罠。
2011/03/27 11:20:59 UTC齊藤
#
もしも Scheme にリードマクロを導入しようとしたらフェイズがわけわかんないことになりそうですね。
2011/03/27 11:24:45 UTCshiro
#
そうですねぇ。リードマクロの実行は別の世界でやるべきなんだろうけれど、それは(meta N)で表現されるフェーズとはまた別に扱わないとならなさそうだしなあ。
2011/03/27 11:26:43 UTC齊藤
#
現状でもちゃんと理解できる気がしない…。 <フェイズ
2011/03/27 11:31:20 UTCshiro
#
いま検索したらこんなのみつけた。フェーズのダークコーナー http://www.phyast.pitt.edu/~micheles/scheme/scheme22.html
2011/03/27 11:33:36 UTC齊藤
#
そういや Gauche の define-reader-ctor も単に順序に依存してましたね
2011/03/27 11:34:58 UTCshiro
#
してます。srfi-10のダークコーナーでもあるんですが。本来reader-ctorの定義は一段メタな話 (マクロ定義とは別の次元で) であるべきなのに、それを明示する手段がない。
2011/03/27 11:39:45 UTC齊藤
#
define-reader-ctor はリードの段階でオブジェクトを構築するってだけでS式から逸脱しているわけではないのか…
#
それなら普通のマクロでS式以外のオブジェクトを返せるように緩和しても同じことができそうな
2011/03/27 11:41:56 UTCshiro
#
define-reader-ctorをマクロ定義扱いにしちゃうってことか。
#
いや、クオートの中に現れたら困りません?
2011/03/27 11:44:36 UTC齊藤
#
そのオブジェクトだけを返すのならともかく、そのオブジェクトを含むS式を表現し難いってことになるのかな。
2011/03/27 11:46:55 UTCshiro
#
srfi-10構文はリテラルデータと同等の表記を追加するものなので、「読まれた」時点で既にオブジェクトになってないとまずいんですね。マクロとはやっぱり実行されるタイミングが違う。
2011/03/27 11:47:12 UTC齊藤
#
いいこと思い付いたと思ったけどやはりそう簡単にはいかないなぁ。