“doc” (Col. : Science Sup 17x24) — 2007/7/19 — 18:18 — page 54 — #64
i
i
i
i
i
i
i
i
54
2
• La programmation déclarative
procédure associée au type Number.
7 Toutes les opérations peuvent être écrites en
plus long, comme, Value.´==´, Value.´<´, Int.´div´ et Float.´/´. Le
tableau utilise le sucre syntaxique quand il existe.
Opération
Description
Type des arguments
A==B
Comparaison d’égalité
Value
A\=B
Comparaison d’inégalité
Value
{IsProcedure P} Test si procédure
Value
A= Comp. plus petit ou égal
Number ou Atom
A Comparaison plus petit
Number ou Atom
A>=B
Comp. plus grand ou égal Number ou Atom
A>B
Comparaison plus grand
Number ou Atom
A+B
Addition
Number
A-B
Soustraction
Number
A * B
Multiplication
Number
A div B
Division (entier)
Int
A mod B
Modulo
Int
A/B
Division (flottant)
Float
{Arity R}
Arité
Record
{Label R}
Étiquette
Record
R.F
Sélection de champ
Record
Tableau 2.3 Quelques opérations de base.
– L’arithmétique. Les nombres à virgule flottante ont les quatre opérations de base
+, -, * et /, avec les définitions standard. Les entiers ont les opérations de base
+, -, * , div et mod, où div est la division entière (on laisse tomber la fraction)
et mod est le modulo entier (le reste après une division entière). Par exemple, 10
mod 3=1.
– Les opérations sur les enregistrements. Les trois opérations de base sur les
enregistrements sont Arity, Label et « . » (point, qui signifie sélection de
champ). Par exemple, avec
X=person(name:"George" age:25)
alors {Arity X}=[age name], {Label X}=person et X.age=25.
L’appel à Arity renvoie une liste qui contient d’abord les traits entiers en ordre
croissant, puis les traits atomiques en ordre lexicographique croissant. Cette liste
représente l’arité de l’enregistrement. L’arité d’un enregistrement est l’ensemble
des traits de l’enregistrement.
7. Pour être précis, Number est un module qui regroupe les opérations du type Number et Number.´ * ´ sélectionne la procédure de multiplication.
i
i
i
i
i
i
i
i
54
2
• La programmation déclarative
procédure associée au type Number.
7 Toutes les opérations peuvent être écrites en
plus long, comme, Value.´==´, Value.´<´, Int.´div´ et Float.´/´. Le
tableau utilise le sucre syntaxique quand il existe.
Opération
Description
Type des arguments
A==B
Comparaison d’égalité
Value
A\=B
Comparaison d’inégalité
Value
{IsProcedure P} Test si procédure
Value
A= Comp. plus petit ou égal
Number ou Atom
A Comparaison plus petit
Number ou Atom
A>=B
Comp. plus grand ou égal Number ou Atom
A>B
Comparaison plus grand
Number ou Atom
A+B
Addition
Number
A-B
Soustraction
Number
A * B
Multiplication
Number
A div B
Division (entier)
Int
A mod B
Modulo
Int
A/B
Division (flottant)
Float
{Arity R}
Arité
Record
{Label R}
Étiquette
Record
R.F
Sélection de champ
Record
Tableau 2.3 Quelques opérations de base.
– L’arithmétique. Les nombres à virgule flottante ont les quatre opérations de base
+, -, * et /, avec les définitions standard. Les entiers ont les opérations de base
+, -, * , div et mod, où div est la division entière (on laisse tomber la fraction)
et mod est le modulo entier (le reste après une division entière). Par exemple, 10
mod 3=1.
– Les opérations sur les enregistrements. Les trois opérations de base sur les
enregistrements sont Arity, Label et « . » (point, qui signifie sélection de
champ). Par exemple, avec
X=person(name:"George" age:25)
alors {Arity X}=[age name], {Label X}=person et X.age=25.
L’appel à Arity renvoie une liste qui contient d’abord les traits entiers en ordre
croissant, puis les traits atomiques en ordre lexicographique croissant. Cette liste
représente l’arité de l’enregistrement. L’arité d’un enregistrement est l’ensemble
des traits de l’enregistrement.
7. Pour être précis, Number est un module qui regroupe les opérations du type Number et Number.´ * ´ sélectionne la procédure de multiplication.
