Site WWW de Laurent Bloch
Slogan du site

ISSN 2271-3905
Cliquez ici si vous voulez visiter mon autre site, orienté vers des sujets moins techniques.

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

modération a priori

Ce forum est modéré a priori : votre contribution n’apparaîtra qu’après avoir été validée par les responsables.

Qui êtes-vous ?
Votre message

Pour créer des paragraphes, laissez simplement des lignes vides.
Attention ! Si votre message contient un lien, il devra être validé par le webmestre. Inutile de le poster à nouveau ;-)

Lien hypertexte

(Si votre message se réfère à un article publié sur le Web, ou à une page fournissant plus d’informations, vous pouvez indiquer ci-après le titre de la page et son adresse.)

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

À la Commission de développement de l’informatique du Ministère des Finances
Bonjour, Sur Noël Aucagne, je vous recommande ceci : https://www.afsp.info/archives/congres/congres

Premiers programmes en Rust
Bonjour, Si vous saviez comme vos messages me font plaisir !! J’ai enseigné et pratiqué (…)

Une sacrée envie de foutre le bordel
D’accord avec le commentaire précédent... très élogieux comme portrait, qui passe un peu vite (…)

Programmation de droite à gauche et vice-versa
Bonsoir, Plongé dans ma biblio de l’histoire des méthodes, je suis allé faire un tour à la bib (…)

Prospérité, puissance et pauvreté : pourquoi certains pays réussissent mieux que d’autres
Bonjour Frédéric, merci de ce message. Alors, Acemoğlu et Robinson ne disent pas explicitement (…)