[SML 7323] Re: ブロック生成のメタプログラミング

Tomohiro Oda tomohiro @ sra.co.jp
2007年 9月 12日 (水) 15:20:46 JST


おだです。

> (fold + 0 '(1 2 3 4 5))
>
> に対応するのはむしろ Symbol>>#value:、#value:value: を前提とした
>
> #(1 2 3 4 5) inject: 0 into: #+
>
> のほうで、

それはたぶん、Scheme(あるいはLisp)だからSymbolと関数の
結び付きを強く感じるのでは。Haskell等の現代的な(?)関数型
言語では、関数の実体とシンボルはやっぱり距離があるような
感覚があります。

でも、カリー化のメタ的な感覚(部分評価して関数を返す関数)と
今回のようなシンボルからクロージャを生成するメタ的な感覚の
違いは、それぞれ型変数を使った多態と動的型付けによる多態に
近いものを感じます。なんとなくですが。
---
おだ




SML メーリングリストの案内