Je vais prendre l'exemple du Lisp que je connais un peu.
En Lisp, tout est liste.
La structure de donnée de base est la liste : (a b c d) est une liste de quatre éléments.
Un programme est aussi une liste. Le premier élément de la liste est une fonction et les suivants sont les arguments. Par exemple, (print '(a b c d)) affiche le contenu de la liste précédente. Le « ' » indique que la liste suivante est une donnée et qu'il ne faut pas tenter de l'interpréter.
# Lisp
Posté par Olivier Serve (site web personnel) . En réponse au message Homoiconicité. Évalué à 2.
Je vais prendre l'exemple du Lisp que je connais un peu.
En Lisp, tout est liste.
La structure de donnée de base est la liste :
(a b c d)est une liste de quatre éléments.Un programme est aussi une liste. Le premier élément de la liste est une fonction et les suivants sont les arguments. Par exemple,
(print '(a b c d))affiche le contenu de la liste précédente. Le « ' » indique que la liste suivante est une donnée et qu'il ne faut pas tenter de l'interpréter.De même, une fonction est une liste :
Calcule la taille d'une liste. Ainsi
(taille '(a b c d))renverra 4.