EBNF ou BNF pour le langage de programmation LOGO
Question
Quelqu'un sait où je peux obtenir la BNF ou EBNF pour le langage de programmation LOGO?
La solution
Une grammaire BNF pourrait ne pas être trop utile dans certaines circonstances ...
L'écriture d'un logo qui est précisément compatible avec la mise en œuvre existante / historique n'est pas une tâche facile (j'ai travaillé sur un tel projet). Le problème est que l'analyseur ne fait pas le travail complet, et l'évaluateur (interprète) doit travailler avec des données partielles. Considérez cet exemple:
PROC1 a b c PROC2
Cela pourrait signifier proc1 (a, b, PROC2 (c)) ou proc1 (a, b, PROC2 (), c) en fonction du nombre de paramètres pour PROC1 et PROC2.
En outre, les interprètes LOGO Je sais, par exemple Berkely LOGO, semblent d'un coup d'œil rapide ne pas écrire un analyseur traditionnel qui a en outre l'accès à chaque procédure et son arité; Au contraire, ils exécutent les procédures et les procédures « manger » le nombre de paramètres dont ils ont besoin. Cela rend l'analyseur un peu naïf et le rôle principal est celui d'un interprète, et donc analyse syntaxique est plutôt inhabituel.
Autres conseils
Il n'y a pas la mise en œuvre du logo standard.
Votre meilleur appel est probablement regarder à la source d'une mise en œuvre populaire, comme UCBLogo