「MLの基礎(6)高階関数」の編集履歴(バックアップ)一覧はこちら

MLの基礎(6)高階関数」(2007/03/10 (土) 21:11:06) の最新版変更点

追加された行は緑色になります。

削除された行は赤色になります。

・高階関数 first order function 関数を返す関数 いよいよ、関数型言語の佳境。 text p.56-60 f m n = m + n と定義し、さらに、 g = f mと定義する。 すると、 g 1 = 3+ 1 g 2 = 3+2 となる。 ・関数式 text p.61 名前のない関数、本来は、これが関数の定義である。 (fn x=>x+1)3*10; (->40) val plusone = fn x=>x+1; として、名前をつけ、 plusone 3 *10を実行してみよ。同じ結果が得られる。 summationの例をパターンマッチングで書くと、 fun summation f 1 = f 1  | summation f n = f n + summation f (n-1); 1+2+3+4+...+10 1^2 + 2^2 +3^2 + +10^2 1^3 + 2^3 + 3^3 + 10^3 をsummationと関数式を使って、それぞれ書いてみると、 summation (fn n=>n) 10 summation (fn n=> n*n) 10 summation (fn n=> n*n*n) 10 とかける。 1回しか使わない場合、いちいち関数に名前をつけずにすむので重宝する。
・高階関数 first order function 関数を返す関数 いよいよ、関数型言語の佳境。 text p.56-60 f m n = m + n と定義し、さらに、 g = f mと定義する。 すると、 g 1 = 3+ 1 g 2 = 3+2 となる。 ・関数式 text p.61 名前のない関数、本来は、これが関数の定義である。 (fn x=>x+1)3*10; (->40) val plusone = fn x=>x+1; として、名前をつけ、 plusone 3 *10を実行してみよ。同じ結果が得られる。 summationの例をパターンマッチングで書くと、 fun summation f 1 = f 1  | summation f n = f n + summation f (n-1); 1+2+3+4+...+10 1^2 + 2^2 +3^2 + +10^2 1^3 + 2^3 + 3^3 + 10^3 をsummationと関数式を使って、それぞれ書いてみると、 summation (fn n=>n) 10 summation (fn n=> n*n) 10 summation (fn n=> n*n*n) 10 とかける。 1回しか使わない場合、いちいち関数に名前をつけずにすむので重宝する。 #comment()

表示オプション

横に並べて表示:
変化行の前後のみ表示: