« INFO401 : utilisation Caml » : différence entre les versions

De Wiki du LAMA (UMR 5127)
Aller à la navigation Aller à la recherche
mAucun résumé des modifications
 
Ligne 1 : Ligne 1 :
=Quelques éléments de syntaxe pour Caml=
=Quelques éléments de syntaxe pour Caml=

==Définitions==

On peut définir une valeur et lui donner un nom avec la syntaxe
let nom = expr
Par exemple :
let pi = 3.1415926536

Il est possible de préciser le type de la définition, même si cela est rarement nécessaires :
let x:float = pi /. 2.0


Pour définir une fonction, on peut utiliser deux syntaxes :
let valeurAbsolue n = if (n>0) then n
else (-n)
ou bien
let valeurAbsolue = fun n -> if (n>0) then n
else (-n)

Ici aussi, on peut préciser les types :
let valeurAbsolue (n:int) : int = if (n>0) then n
else (-n)
ou
let valeurAbsolue : int->int = fun n -> if (n>0) then n
else (-n)


Il possible de faire des définitions locales avec la syntaxe
... let x=... in ...
Par exemple,
let x:float = let pi = 3.14 in
pi /. 2.0

Si une variable est définie plusieurs fois, c'est toujours la dernière définition qui est utilisée.


=Utilisation du toplevel=
=Utilisation du toplevel=

Version du 13 janvier 2009 à 10:26

Quelques éléments de syntaxe pour Caml

Définitions

On peut définir une valeur et lui donner un nom avec la syntaxe

let nom = expr

Par exemple :

let pi = 3.1415926536

Il est possible de préciser le type de la définition, même si cela est rarement nécessaires :

let x:float = pi /. 2.0


Pour définir une fonction, on peut utiliser deux syntaxes :

let valeurAbsolue n = if (n>0) then n
                               else (-n)

ou bien

let valeurAbsolue = fun n -> if (n>0) then n
                                      else (-n)

Ici aussi, on peut préciser les types :

let valeurAbsolue (n:int) : int = if (n>0) then n
                                           else (-n)

ou

let valeurAbsolue : int->int = fun n -> if (n>0) then n
                                                 else (-n)


Il possible de faire des définitions locales avec la syntaxe

... let x=... in ...

Par exemple,

let x:float = let pi = 3.14 in
                pi /. 2.0

Si une variable est définie plusieurs fois, c'est toujours la dernière définition qui est utilisée.

Utilisation du toplevel

Utilisation d'Emacs et du mode tuareg

Compilation