Blog de Laurent Bloch
Blog de Laurent Bloch

ISSN 2271-3980
Cliquez ici si vous voulez visiter mon autre site, orienté vers des sujets informatiques et mes enseignements.

Pour recevoir (au plus une fois par semaine) les nouveautés de ce site, indiquez ici votre adresse électronique :

Forum de l’article

Le compte est bon

Rappel de la discussion
> Le compte est bon
Laurent Bloch - le 7 décembre 2004

Un utilisateur du programme donné dans cet article m’a dit :

« Le programme interprété et le programme compilé n’ont pas le même comportement : pour le premier je dois donner la liste de nombres sous la forme quottée :

'(2 4 7 11 20)

alors qu’au programme compilé je dois donner la liste non quottée :

(2 4 7 11 20) »

Cette observation ne tient pas compte de la différence de contexte : si dans la « boucle lire-évaluer-imprimer » (boucle read-eval-print) de l’interprète j’appelle directement la procédure compte-bon je dois effectivement taper :

(compte-bon 14 '(2 4 7 11 20))

en quottant la liste pour que l’interprète ne tente pas de l’évaluer, ce qui provoquerait une erreur (laquelle ?).

Mais si, dans la boucle read-eval-print de l’interprète, comme d’ailleurs en réponse au programme compilé, je passe par la procédure entre, je dois donner la liste en réponse à un appel à la procédure (read), et là je ne devrai pas la quotter parce qu’elle ne sera pas évaluée.

Pourquoi cette liste n’a-t-elle pas été évaluée ? Parce qu’elle n’a pas été soumise au système par l’intermédiaire de la « boucle lire-évaluer-imprimer », mais renvoyée comme résultat de l’évaluation d’une expression.

Et, heureusement d’ailleurs, l’évaluateur ne « boucle » pas indéfiniment pour évaluer tous les résultats qu’il produit.

Derniers commentaires

Sparte
Oui, la comparaison d’Israël avec Sparte a ses limites, mais donne quelques idées intéressantes (…)

Sparte
Merci pour votre article, très équilibré, mais qui, pas plus que le mien, n’a de solution toute (…)

Sparte
Salut Laurent, si la comparaison entre Sparte et Israel peut être séduisante, la dimension (…)

Sparte
Je suis content que nous ayons pu avoir ce débat. Il permet de mettre en relief nos arguments (…)

Sparte
Bon, je ne vais pas ergoter sur vos arguments, on n’en finirait pas. Ilan Pappé s’appuie sur les (…)