En Haskell, se considera buena práctica declarar explícitamente la firma de tipo de sus funciones, aunque puede (por lo general) deducirse. Parece que esto ni siquiera es posible en OCaml, p.OCaml firmas de tipos explícitas
val add : int -> int -> int ;;
me da un error. (Aunque puedo hacer type
módulos que dan sólo las firmas.)
- Estoy en lo cierto que esto no es posible hacerlo en OCaml?
- Si es así, ¿por qué? El sistema de tipo de OCaml no parece increíblemente diferente de Haskell.
Esta última opción ya no es una opción válida. Al menos OCaml 4.04.0 no lo admite. Todos deberían usar la primera opción. –