People say everything in ocaml is an expression and has a type. But how can I understand a statement like
let x = 3;
and
let y = x * x;
These do not look like expressions, right?
>Solution :
OCaml expression are presented here https://v2.ocaml.org/manual/expr.html, and what you have typed is not expressions but let-bindings.
Beware, a single ; is used to separate expressions and is typically used with imperative expressions.
Don’t confuse with ;;