20

私は以下の機能を持っています、そしてそれは働きます:

(fn x => x * 2) 2; 

しかし、これは機能しません:

(fn x y => x + y ) 2 3;

誰か教えてもらえますか?または、それを機能させるためのヒントを教えてください。

4

3 に答える 3

34

(fn x => fn y => x+y) 2 3;動作します。fn単に、持っているカレー関数を定義するための同じ構文糖衣を持っていませんfun

于 2010-03-13T02:25:43.637 に答える
2

標準 ML では、関数は引数を 1 つしか持てないため、

(fn (x,y) => x + y) (2,3) 

タイプは

fn: int * int -> int

このとき (x,y) と (2,3) はリスト構造であり、

于 2014-02-09T12:30:38.003 に答える