Débuter avec la construction du compilateur

Premiers pas : présentation

Conditions préalables

  • Avoir une bonne maîtrise d’un langage de programmation tel que Python, C, C++, Ruby ou tout autre langage existant.
  • ** Ayez installé votre éditeur de code ou IDE préféré ** (par exemple, [VSCode][1])
  • Restez motivé. Construire un compilateur n’est pas facile, alors continuez à pousser ; ça vaut l’effort.

Catégories de langue

Lors de la création d’un compilateur, vous devez décider lequel des 2 types de langage sera le compilateur.

  • Langage jouet : C’est lorsque vous créez un langage de programmation qui ne résout pas un problème, mais qui est destiné à l’apprentissage. Des exemples amusants de ceux-ci sont Whitespace, Lolcode et Brainfuck.

  • Langage de programmation : Ce sont les langages qui visent à résoudre un problème ou à apporter quelque chose de nouveau et d’unique à la table. Ceux-ci peuvent être comparés à des langages tels que Swift, C++ et Python.

Ressources

Au cours de votre voyage, il est inévitable que vous tombiez sur quelque chose dont vous n’avez aucune idée, mais j’espère qu’une de ces ressources vous aidera.

  • [Créez votre propre langage de programmation (Ebook)][2]
    • +Friendly to beginners
    • +Short
    • +Aided the creation of Coffeescript and Rubby
  • [Compilateurs : principes, techniques et outils (The Dragon Book)][3]
    • Contains everything you’d ever want to know about a compiler, but it’s advanced and a long read
  • [Conception de compilateur moderne (Ebook)][4]
    • This is another highly praised book on compiler design

[1] : https://code.visualstudio.com [2] : http://createyourproglang.com [3] : https://en.wikipedia.org/wiki/Compilers :_Principes,_Techniques,_et_Outils [4] : https://www.amazon.com/dp/0471976970/?tag=stackoverfl08-20