fnによるラムダ抽象
fun plus x y = x + y; (* OK *) val plus = fn x => fn y => x + y; (* OK *) val plus = fn (x, y) => x + y; (* OK *) val plus = fn x y => x + y; (* NG *)
最後がNGなのが納得がいかない! が、そうなんだから仕方ない。最初のような書き方をするしかないだろう。
このブログは、旧・はてなダイアリー「檜山正幸のキマイラ飼育記 メモ編」(http://d.hatena.ne.jp/m-hiyama-memo/)のデータを移行・保存したものであり、今後(2019年1月以降)更新の予定はありません。
今後の更新は、新しいブログ http://m-hiyama-memo.hatenablog.com/ で行います。
fun plus x y = x + y; (* OK *) val plus = fn x => fn y => x + y; (* OK *) val plus = fn (x, y) => x + y; (* OK *) val plus = fn x y => x + y; (* NG *)
最後がNGなのが納得がいかない! が、そうなんだから仕方ない。最初のような書き方をするしかないだろう。