- 345 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 20:11:25 ]
- なるほど、やはり出来ないのかー
リーダーマクロ、存在だけは知ってましたが コンパクトでかっこいいSchemeで出来たらなぁって思いまして 昨日考えてたんですが、 Schemeには演算子の優先順位がないのが原因でしょうね もし優先順位がつけば、括弧省略出来る それはそれで、F#やらHaskellやらでみかける パイプライン演算子みたいなのが定義出来たり、と夢が膨らむが 言葉に表せない大切な物が犠牲になってしまう気がします >マクロ使用を囲う括弧と、マクロ名さえあれば中置記法もできます。 これ非常に興味あるんですが、どういうことでしょうか? 適当に試してはみたんですが、わかりません (define-syntax plus (syntax-rules () ; ((x _ y) (+ x y)))) ; ((x (_) y) (+ x y)))) ; (((x _ y))(+ x y)))) Gaucheの拡張で優先順位を計算して括弧を省略ってページなら見つけましたが そういった話でしょうか?
|

|