L'exemple à droite montre de tout petits exemples :
- La variable Fruits est associée
à une liste contenant les atomes tomate,
orange et pomme
- La variable Legumes est quant à
elle associée à une liste contenant les atomes
celeri et carotte
- La variable Vegetaux est associée
à un tuple contenant Fruits,
Legumes et l'atome fougere
- Eensuite, les variables X et
Y sont respectivement associées aux Patterns
3.5 et -1.2, et la variable
Point est associée au tuple {X,Y}
(ce qui, une fois évalué, exprime le tuple
{3.5,-1.2})
- Ce qui peut surprendre, et montre en même temps l'une des forces
d'Erlang,
est l'expression à la ligne 7> où
le Pattern {X0,Y0} est associé
à l'évaluation du Pattern
Point. Puisque Point évalue
alors au tuple {3.5,-1.2}, cette expression
associée à X0 le Pattern
3.5 et à Y0 le Pattern
-1.2, comme le montre l'évaluation de
X0 à la ligne 8>
|
Erlang R14B (erts-5.8.1.1) [smp:2:2] [rq:2] [async-threads:0]
Eshell V5.8.1.1 (abort with ^G)
1> Fruits = [ tomate, orange, pomme ].
[tomate,orange,pomme]
2> Legumes = [ celeri, carotte ].
[celeri, carotte]
3> Vegetaux = { Fruits, Legumes, fougere }.
{[tomate,orange,pomme],[celeri,carotte],fougere}
4> X = 3.5.
3.5
5> Y = -1.2.
-1.2
6> Point = { X, Y }.
{3.5,-1.2}
7> { X0, Y0 } = Point.
{3.5,-1.2}
8> X0.
3.5
9>
|