[ << Tutoriel Scheme ] | [Top][Contents][Index] | [ Interfaces pour programmeurs >> ] |
[ < Listes ] | [ Up : Types de données Scheme composites ] | [ Tables de hachage > ] |
Listes associatives (alists)
Il existe un type particulier de liste : la liste associative – ou alist. Une alist permet de stocker des données dans le but de les réutiliser.
Une liste associative est une liste dont les éléments sont des paires.
Le car
de chacun des éléments constitue une clé (key) et
chaque cdr
une valeur (value). La procédure Scheme
assoc
permet de retrouver une entrée de la liste associative ;
son cdr
en fournira la valeur :
guile> (define mon-alist '((1 . "A") (2 . "B") (3 . "C"))) guile> mon-alist ((1 . "A") (2 . "B") (3 . "C")) guile> (assoc 2 mon-alist) (2 . "B") guile> (cdr (assoc 2 mon-alist)) "B" guile>
LilyPond recourt abondamment aux alists pour stocker des propriétés ou autres données.