演算子

整数と実数で演算子が違う。

  • 整数: +, -, *, /
  • 実数: +., -., *., /.

間違えるとエラーになる。

# 1 + 2;;
- : int = 3
# 1.0 + 2.5;;
Characters 0-3:
1.0 + 2.5;;
^^^
This expression has type float but is here used with type int
# 1.0 +. 2.5;;
- : float = 3.5

文字列の連結

# "Hello," ^ " world.";;
- : string = "Hello, world."

文字列.[n] という書き方でn番目の文字を取得できる(先頭が0番目)。

# "Hello, world.".[0];;
- : char = 'H'
# "Hello, world.".[4];;
- : char = 'o'

関数の定義

これも let式を使う。

# let area_of_circle r = r *. r *. pi;;
val area_of_circle : float -> float = <fun>
# area_of_circle 1.0;;
- : float = 3.141529

引数の型を間違えないこと。

# area_of_circle 1;;
Characters 15-16:
area_of_circle 1;;
^
This expression has type int but is here used with type float