Fish Touching🐟🎣

OCaml Functions

Jul 28, 2023

# let average a b =
    (a +. b) /. 2.0;; (* +. /. to do floating point arithmetic *)
val average : float -> float -> float = <fun>

f : arg1 -> arg2 -> ... -> argn -> rettype

let rec even n =
  n = 0 || odd (n - 1)
and odd n =
  n <> 0 && even (n - 1)

# Pipe

# Labeled Arguments

let f ~name1:arg1 ~name2:arg2 = arg1 + arg2;;
let f ~name1:name1 ~name2:name2 = name1 + name2
let f ~name1 ~name2 = name1 + name2

let f ~name1:(arg1 : int) ~name2:(arg2 : int) = arg1 + arg2

(* Optional Argument *)
let f ?name:(arg1=8) arg2 = arg1 + arg2