J'écris un optimiseur pour un langage similaire à JavaScript, et je dois choisir une représentation de code intermédiaire. De nos jours, le choix évident / typique est Static Single Assignment (SSA). Cependant, la mise en œuvre du compilateur moderne en C discute également de la forme intermédiaire fonctionnelle, ce qui …
Fermé. Cette question est hors sujet . Il n'accepte pas actuellement de réponses. Vous souhaitez améliorer cette question? Mettez à jour la question afin qu'elle soit sur le sujet pour Software Engineering Stack Exchange. Fermé il y a 6 ans . Je suis très intéressé par les théories des langages …
Si je me souviens bien de mon cours sur les compilateurs, le compilateur typique a le plan simplifié suivant: Un analyseur lexical analyse (ou appelle une fonction de numérisation) le code source caractère par caractère La chaîne de caractères d'entrée est vérifiée par rapport au dictionnaire des lexèmes pour la …
J'ai une langue existante que je dois porter sur une nouvelle plate-forme. J'essaierai probablement ceci en changeant le backend du compilateur existant. La réécriture du backend représente un travail considérable. Je ne vois pas comment décomposer cela en histoires sensées sans violer les critères INVEST. Je ne vois pas comment …
J'ai appris le F # et ça commence à influencer ma façon de penser quand je programme C #. À cette fin, j'ai utilisé la récursivité lorsque je pense que le résultat améliore la lisibilité et je ne peux pas imaginer qu'il se termine par un débordement de pile. Cela …
Les réponses à cette question sont un effort communautaire . Modifiez les réponses existantes pour améliorer ce post. Il n'accepte pas actuellement de nouvelles réponses ou interactions. Il existe plusieurs podcasts avec des conférences des universités. Je recherche des "autres" podcasts. Y a-t-il donc des podcasts non-conférence sur le développement …
L' article de Wikipedia sur les langues basées sur des prototypes contient le paragraphe suivant: Presque tous les systèmes basés sur des prototypes sont basés sur des langages interprétés et typés dynamiquement. Cependant, des systèmes basés sur des langages typés statiquement sont techniquement réalisables. De quelles manières un système de …
Inspiré par cette question . J'ai entendu dire que certaines versions très très anciennes des compilateurs C pour ordinateurs personnels (je suppose que c'était vers 1980) résidaient sur deux ou trois disquettes et donc pour compiler un programme, il fallait d'abord insérer le disque avec "premier passage", exécuter le "premier …
Fermé. Cette question est hors sujet . Il n'accepte pas actuellement les réponses. Voulez-vous améliorer cette question? Mettez à jour la question afin qu'elle soit sur le sujet pour Software Engineering Stack Exchange. Fermé il y a 4 ans . J'ai été motivé par la question de la construction du …
Fermé . Cette question doit être plus ciblée . Il n'accepte pas actuellement les réponses. Voulez-vous améliorer cette question? Mettez à jour la question afin qu'elle se concentre sur un problème uniquement en modifiant ce message . Fermé il y a 5 ans . J'ai entendu tout à l'heure qu'il …
De nombreux compilateurs ont des messages d'avertissement pour avertir les programmeurs des erreurs d'exécution, de logique et de performances potentielles, la plupart du temps, vous les corrigez rapidement, mais qu'en est-il des avertissements non corrigés? Comment gérez-vous les avertissements non corrigés? Réécrivez-vous une partie du code, ou réécrivez-vous de la …
Ce que je veux dire ici, c'est comment passer d'un modèle T add(T a, T b) ...au code généré? J'ai pensé à quelques façons d'y parvenir, nous stockons la fonction générique dans un AST au fur Function_Nodeet à chaque fois que nous l'utilisons, nous stockons dans le nœud de fonction …
Je me demandais pourquoi C ++ est un bon choix pour écrire un compilateur. Bien sûr, C est également utile à cet effet, car de nombreux compilateurs sont écrits en C ou en C ++, mais je suis plus intéressé par C ++ cette fois. Des bonnes raisons? Je cherchais …
Pourquoi la représentation intermédiaire de LLVM (LLVM IR) ressemble-t-elle à un assemblage plutôt qu'à un arbre? Sinon, pourquoi les implémentations de langage ciblent-elles l'IR LLVM plutôt que l'AST de Clang? Je n'essaie pas de poser deux questions différentes à la fois si cela semble ainsi. Pour moi, il semble simplement …
J'écris mon premier langage de programmation orienté objet et jusqu'ici tout va bien avec la création d'une seule «classe». Mais, disons que je veux avoir des cours, disons ClassAet ClassB. À condition que ces deux-là n'aient rien à voir l'un avec l'autre, alors tout va bien. Cependant, disons ClassAcrée un …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.