14 points par xguru 2024-09-14 | 1 commentaires | Partager sur WhatsApp
  • Un outil destiné à celles et ceux qui veulent lancer un nouveau projet de langage de programmation
    • Permet de développer des extensions de langage pour éditeurs de code, des compilateurs et interpréteurs de langages de programmation, et même de nouveaux éditeurs de code

Fonctionnalités principales

  • Générateur d’analyseur syntaxique avec macros : le lexique et la grammaire syntaxique du langage sont définis à l’aide de macros dérivées sur des types enum, et les variantes de l’enum représentent des nœuds avec des tokens individuels et des règles d’analyse syntaxique
  • Analyseur syntaxique manuel : l’API permet de développer des parseurs récursifs descendants écrits à la main avec un lookahead illimité, et de les intégrer de manière fluide avec les parseurs générés par macros
  • Résilience aux erreurs : les parseurs produits sont robustes face aux erreurs et peuvent construire un arbre syntaxique à partir d’un code source incomplet
  • Framework d’analyse sémantique : inclut un analyseur sémantique intégré qui gère des calculs arbitraires à la demande sur l’arbre syntaxique sous forme d’attributs de référence
  • Compilation incrémentale : met continuellement à jour en mémoire la représentation de la structure de la base de code en réponse aux modifications incrémentales du texte des fichiers de l’utilisateur final. Le traitement des changements reste rapide, même sur de grandes bases de code
  • Calcul parallèle : spécialement conçu pour les programmes multithread et monothread
  • Compatibilité WebAssembly : compatible avec les cibles wasm, en particulier dans les environnements de navigateur
  • Formateur de code source : inclut des outils pour développer des programmes de formatage de code prenant en compte les commentaires et les lignes vides
  • Extraits de code annotés : fournit une API pour afficher dans le terminal des extraits de code source avec coloration syntaxique et annotations, afin de signaler les erreurs syntaxiques et sémantiques d’une base de code
  • API autonome : fournit une API autonome, extensible et hautement configurable pour développer la partie front-end des compilateurs de langages de programmation et les extensions de langage pour éditeurs de code. Aucune dépendance tierce en dehors de la bibliothèque standard Rust et du crate de macros

1 commentaires

 
halfenif 2024-09-14

Deirdre (irlandais : Deirdre [ˈdʲɛɾˠdʲɾʲə]) est l’héroïne tragique la plus célèbre de la mythologie irlandaise. Son histoire fait partie du cycle d’Ulster.

L’explication sur Wikipédia a l’air assez impressionnante.