Note :
Il n'y a actuellement aucun avis de lecteur. La note est basée sur 3 votes.
Compiler Design Using Kotlin(TM): An Object-Oriented Approach
Ce livre est conçu principalement pour être utilisé comme manuel dans un cours d'un semestre sur la conception de compilateurs pour les étudiants de premier cycle et les étudiants débutants de troisième cycle. Les seuls prérequis pour ce livre sont une familiarité avec les algorithmes de base et les structures de données (listes, cartes, récursion, etc.), une connaissance rudimentaire de l'architecture des ordinateurs et du langage d'assemblage, et une certaine expérience du langage de programmation Kotlin ou d'un langage étroitement lié tel que Java.
Une étude complète des compilateurs pourrait facilement remplir plusieurs cours de niveau supérieur, et par conséquent certaines simplifications et compromis sont nécessaires pour un cours d'un semestre qui est accessible aux étudiants de premier cycle. Voici quelques-unes des décisions prises pour atteindre les objectifs de ce livre.
1. Le livre a un objectif étroit : il s'agit d'un cours sur les compilateurs orienté vers les projets. La théorie des compilateurs est réduite au minimum, mais l'orientation vers les projets conserve la partie "amusante" de l'étude des compilateurs.
2. Le langage source compilé est relativement simple, mais il est suffisamment puissant pour être intéressant et stimulant. Il possède des types de données de base, des tableaux, des procédures, des fonctions et des paramètres, mais il relègue de nombreuses autres caractéristiques intéressantes du langage aux exercices du projet.
3. Le langage cible est un langage d'assemblage pour une machine virtuelle avec une architecture basée sur la pile, similaire mais beaucoup plus simple que la machine virtuelle Java (JVM). Cette approche simplifie grandement la génération de code. Un assembleur et un émulateur pour la machine virtuelle sont fournis sur le site web du cours.
4. Aucun outil spécial lié au compilateur n'est requis ou utilisé dans le livre. Les étudiants n'ont besoin que d'un compilateur Kotlin et d'un éditeur de texte, mais la plupart d'entre eux voudront utiliser Kotlin avec un environnement de développement intégré (IDE).
5. Un composant très important d'un compilateur est l'analyseur syntaxique, qui vérifie qu'un programme source est conforme à la syntaxe du langage et produit une représentation intermédiaire du programme qui convient à une analyse supplémentaire et à la génération de code. Il existe plusieurs approches différentes de l'analyse syntaxique, mais dans le cadre d'un cours d'un semestre, ce livre ne met l'accent que sur une seule approche, l'analyse syntaxique par descente récursive avec plusieurs jetons d'anticipation (lookahead tokens).
© Book1 Group - tous droits réservés.
Le contenu de ce site ne peut être copié ou utilisé, en tout ou en partie, sans l'autorisation écrite du propriétaire.
Dernière modification: 2024.11.14 07:32 (GMT)