2009年3月31日 (火曜日)

22:07:26 # Life ocamlで関数を使ってみる。 letで関数が定義できて、functionというのはmatchをするための略記構文だというのが 新鮮だった。loop 関数の第二引数は明示的に宣言しなくても matchに利用される。 再帰するためには rec で宣言する、というのに違和感。 練習用に再帰してリストの項目を全部掛け算する関数を書いてみた。

# let listmul l = 
  let rec loop s = function
      [] -> s
    | hd :: rest -> loop (s * hd) rest
  in
    loop 1 l;;
# listmul [2; 3; 4];;
  - : int = 24
	
Junichi Uekawa

$Id: dancer-diary.el,v 1.93 2009/01/04 03:42:29 dancer Exp $