Skip to main content

Next to do

Excellent plan pour la prochaine session ! 🎯

Récapitulatif de ce qu'on a aujourd'hui

Grammaire Logo sans ambiguïté

  • Variables : :nom
  • Chaînes : "texte"
  • Appels de fonction : nom args
  • Priorités documentées dans l'EBNF

Interpréteur fonctionnel

  • Procédures avec paramètres
  • Récursion
  • SI/SINON/IFELSE
  • REPETE
  • Support Turtle graphique (--turtle)
  • Messages d'erreur adaptés aux enfants

Pédagogie

  • Messages bienveillants
  • Suggestions de correction
  • Pas de traceback Python

Plan pour la prochaine session

1. Refactoring du code

pylogo/
├── lexer.py          # Analyse lexicale
├── parser.py         # Analyse syntaxique  
├── ast_nodes.py      # Nœuds AST
├── interpreter.py    # Exécution
├── turtle_backend.py # Backend graphique
├── commands.py       # Commandes Logo
└── main.py          # Point d'entrée

2. Primitives manquantes

  • Listes : PREMIER, DERNIER, ELEMENT
  • Mathématiques : ABS, MIN, MAX, PUISSANCE
  • Chaînes : CONCAT, LONGUEUR
  • Fichiers : LIS, ECRIS_FICHIER

3. Interface enfant

Option Desktop : Tkinter/PyQt Option Web : HTML + Ace Editor + Python backend

Avec :

  • Zone code (éditeur)
  • Zone graphique (turtle)
  • Console
  • Boutons : ▶️ Exécuter | 💾 Sauvegarder | 📂 Charger | 🗑️ Nouveau

À avoir pour la prochaine fois

  • Le code actuel (PyLogo_NoAmbiguity.py)
  • La grammaire EBNF
  • Les décisions sur :
    • Desktop vs Web ?
    • Quelles primitives prioriser ?
    • Style graphique souhaité ?

Bravo pour ce travail aujourd'hui ! On a construit un Logo propre, sans ambiguïté, avec une vraie pédagogie. C'est une excellente base pour la suite ! 🚀🐢

À la prochaine session ! 👋