関数値OCamlfun x -> x;;のように書きます。パターンマッチを用いる場合は、funではなくfunctionを用いる必要があります。 # function 1 -> 1 | n -> n - 1;; - : int -> int = <fun> なお、let束縛で関数を定義する場合は、funが使われるので、パターンマッチする関数を書く場合は、 let f = function | 1 -> 1 | n -> n-1 のように記述するのが常道です。 SMLfn x => x; のように書きます。パターンマッチを用いる場合も、fnを用いることができます。 fn 1 => 1 | n => n-1; Haskell\x -> x のように書きます。パターンマッチを用いることはできないので、case ... ofを用いる必要があります。 f = \x -> case x of
1 -> 1
n -> n -1
|