2006-09-24 型 Haskell OCaml ふつけるメモ Haskell OCaml 整数 Int int 文字 Char char 文字列 String = [Char] string 真偽値 Bool(True) bool(true) 型aのリスト [a] ([1, 2, 3]) a list ([1; 2; 3]) 型変数 (a, b, c) ('a, 'b, 'c) ※ ()内はリテラルの例多相型: 型変数を含む型 型宣言 {- Haskell -} firstNLines :: Int -> String -> String firstNLines n cs = unlines $ take n $ lines cs (* OCaml *) let firstNLines (n : int) (cs : string) : string = unlines (take n (lines cs)) Haskellは"::"で型を指定し、":"がリストのcons。OCamlとは記号が逆なことに注意。