Partage
  • Partager sur Facebook
  • Partager sur Twitter

créer un mini langage de programmation

    9 juin 2021 à 18:01:37

    Bonjour, je voudrais savoir comment créer un langage de programmation(mini), pouvez me le dire
    • Partager sur Facebook
    • Partager sur Twitter
      9 juin 2021 à 18:59:41

      Si tu veux vraiment faire un mini mini langage, il pourrait être interprété, pas compilé.
      Ça va te prendre des techniques de "parsing". White Crow en connait sûrement ...
      Tu en trouveras aussi sur le web, tel que:
      https://www.springer.com/gp/book/9780387202488
      • Partager sur Facebook
      • Partager sur Twitter

      Le Tout est souvent plus grand que la somme de ses parties.

        9 juin 2021 à 19:15:20

        bah pour créer un langage, ne serait-ce qu'un langage interprété, avec un minimum de sérieux, il faut être capable de produire une grammaire, et utiliser un outil qui va produire un tel parseur.

        La question serait surtout : pourquoi vouloir créer un langage ?

        • Partager sur Facebook
        • Partager sur Twitter
          10 juin 2021 à 9:04:58

          Il y a de bons documents là dessus. Par exemple ceux de Niklaus Wirth (inventeur de pascal, contributeur à algol, etc) qui était prof de ETH de Zurich.

          Le parsing peut se faire simplement par la bonne vieille méthode de la descente récursive. Ca évite d'avoir à se battre avec des usines à gaz mal fichues (lex/yacc...) avant d'avoir compris à quoi elles servent et leurs limitations.  Longtemps, il a donné comme projet à ses étudiants un langage PL/0 à implémenter.

          Avec le temps, ses exercices ont évolué, ça a donné Oberon/0. Dans https://people.inf.ethz.ch/wirth/CompilerConstruction/CompilerConstruction1.pdf (qui ne fait que 44 pages, et est gratuit contrairement aux textbooks américains qui coutent un bras) on trouve toutes les explications nécessaires.

          Pour mes étudiants à moi (IUT 1ere année) j'avais un TP - avant le covid - qui expliquait sur plusieurs séances quelques idées là dessus. Au départ c'est juste une calculette qui affiche la valeur de l'expression qu'on tape, puis on introduit des variables, etc. A la fin on génére du code pour une machine à registres (certaines années, c'est une machine à pile, ou risc à 3 registres. Faut varier les plaisirs).


          https://www.labri.fr/perso/billaud/Resources/resources/M2103-2020/TP-Calculette/

          Pourquoi créer un langage ? Parce que ça peut être amusant.

          PS: le saviez-vous ? l'équipe de g++ a laissé tomber en 2004 l'utilisation de générateurs d'analyseurs (Bison) pour revenir à la descente récursive.

          -
          Edité par michelbillaud 10 juin 2021 à 11:01:13

          • Partager sur Facebook
          • Partager sur Twitter

          créer un mini langage de programmation

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
          • Editeur
          • Markdown