Académique Documents
Professionnel Documents
Culture Documents
Let var=6 ;;
Asignations locales
Expr2
Fonction en Ocaml
Type int -> int -> int ; la flèche indique une fonction
Val somme : int -> int-> int mais ceci signifie en fait : int -> (int -> int)
En Ocaml, on n’aime pas les parenthèses et on aime bien les fonctions partielles. Ce que fait somme
c’est prendre un entier x en entrée et renvoyer la fonction f et f_x : N -> N , y I-> x+y.
Let double x =
|0 -> accumulateur
in aux x 0 ;;
|0-> 0
|y -> 2*y;;
Les fonctions prennent toujours un argument et si elles ne sont pas censées en prendre, elles en
prennent quand même un de type unit.
() est de type unit et c’est son seul élément, il est utilisé pour les expressions qui ne renvoient rien.
(imprime 5 () ;;
Let imprime5 x y = print_int 5 a pour signature ‘a –> ‘b -> unit. En fait, x et y peuvent être de type
quelconque car on ne fait rien avec.
Ex : let a = Array.length t in
|Melange(x,y,z) -> if (x=0 && y=0 && z=255) then true else false ;;