Quelles sont les étapes, une action de haut niveau, il faut prendre pour créer un nouveau langage de programmation?

Comme mentionné précédemment, il est important d’avoir une cause qui vous respectent. Je pense qu’il est aussi très bien si vous souhaitez implémenter une langue juste pour l’expérience d’apprentissage, car il peut être instructif et beaucoup de plaisir.

Commencez par la pensée sur la sémantique et la syntaxe de votre langue. Si vous êtes à la recherche d’inspiration, consultez l’article de Wikipedia sur le régime [1] et découvrez la référence PLT raquette [2]. Scheme est un langage de petit et bien conçu. Il contient beaucoup de véritables joyaux. Raquette est une application fine de celui-ci.

Revoir certains de vos projets de passe-temps et réfléchir à comment ils ressembleraient dans votre nouvelle langue. Quel est votre plan pour types? Si vous faites partie de la tribu λ , l’impératif ou les deux?

Définir la grammaire correspondant à votre langue. Vous souhaitez peut-être utiliser quelque chose comme Flex et Bison [3, 4] pour mettre en œuvre votre lexer et analyseur. Si ce n’est pas le cas, il y a toujours la possibilité de rouler vos propres.

Maintenant, vous pouvez décider si vous voulez vos programmes soient interprétées dans le logiciel (à la CPython), compilé par JIT (comme PyPy), ou courir sur le métal nu (comme la plupart des programmes de C). LLVM possède un grand soutien pour la mise en œuvre des compilateurs et des machines JIT [5].

Pour rappel, vous devez ;

  • Décrivez comment le code source doit être structuré.
  • Prendre le code source et le convertir en une représentation interne (IR).
  • Analyser et exécuter votre IR

Bonne chance!

[1] http://en.wikipedia.org/wiki/Sch...
[2] http://docs.racket-lang.org/refe...
[3] http://flex.sourceforge.net/
[4] http://www.gnu.org/software/biso...
[5] http://llvm.org/docs/tutorial/in...


Tags: Programmation informatique, Langages de programmation, Open Source