toutes les options
bullseye  ] [  bookworm  ] [  trixie  ] [  forky  ] [  sid  ]
[ Paquet source : bisonc++  ]

Paquet : bisonc++ (6.09.02-1 et autres)

Liens pour bisonc++

Screenshot

Ressources Debian :

Télécharger le paquet source bisonc++ :

Responsables :

Ressources externes :

Paquets similaires :

générateur d'analyseur syntaxique pour C++ similaire à bison

Bisonc++ a été conçu à partir de bison++, créé par Alain Coetmeur. Bisonc++ ajoute à bison++ une conception de classes plus propre utilisant une classe de base pour communiquer les jetons lexicaux à un scanner lexical.

Bisonc++ crée la classe d'analyse en plus de la fonction d'analyse. La classe peut donc facilement être complétée avec des membres supplémentaires sans recourir à des fonctions polymorphes. Par conséquent, les classes créées par bisonc++ n'ont pas de membre virtuel et n'ont qu'un seul membre public : parse(), qui remplace la fonction yyparse() à l'ancienne de bison et bison++.

Bisonc++ propose plusieurs options, dont une permettant de définir les classes créées par bisonc++ dans un espace de noms différent. Cela permet aux développeurs de définir des symboles supplémentaires, même en dehors de la classe créée par bisonc++, sans risquer de collision de noms. Avec bisonc++, des moyens artificiels d'empêcher les collisions de noms, comme la convention de commencer les noms par « yy- » de bison et bison++, ne sont plus nécessaires. Bisonc++ ne génère que du code C++. S'il faut générer du code C, bison doit être utilisé. Les prérequis de la grammaire de bisonc++ sont hautement compatibles avec ceux de la grammaire de bison, ce qui rend la conversion d'une grammaire de bison vers bisonc++ relativement simple.

En plus du générateur d'analyseur syntaxique lui-même et de plusieurs fichiers squelettes, le paquet fournit une page de manuel très fournie, un manuel complet réécrit à partir du manuel d'origine de bison et plusieurs exemples.

Un peu d'histoire : la version 0.98 de bisonc++ est une réécriture complète d'un générateur d'analyseur syntaxique LALR(1) tel que décrit dans le livre « Compilers » (également appelé « Dragon Book ») d'Aho, Sethi et Ullman (1986). La version 0.98 a été achevée en mai 2005. Une autre réécriture majeure s'est terminée un an plus tard, en mai 2006, aboutissant à la version 1.00.

Étiquettes: Développement de logiciel: Génération de code, Programmation C++, devel::library, implemented-in::c++, Interface utilisateur: Ligne de commande, Rôle: role::devel-lib, role::program, Champ d'application: Utilitaire

Autres paquets associés à bisonc++

  • dépendances
  • recommandations
  • suggestions
  • enhances

Télécharger bisonc++

Télécharger pour toutes les architectures proposées
Architecture Version Taille du paquet Espace occupé une fois installé Fichiers
alpha (portage non officiel) 6.09.02-1 240,7 ko918,0 ko [liste des fichiers]
amd64 6.09.02-1 254,2 ko860,0 ko [liste des fichiers]
arm64 6.09.02-1+b1 235,5 ko852,0 ko [liste des fichiers]
armhf 6.09.02-1 230,8 ko722,0 ko [liste des fichiers]
hppa (portage non officiel) 6.09.01-1 238,5 ko814,0 ko [liste des fichiers]
i386 6.09.02-1 267,4 ko870,0 ko [liste des fichiers]
ia64 (portage non officiel) 6.08.00-1 278,7 ko1 239,0 ko [liste des fichiers]
loong64 6.09.02-1 247,3 ko915,0 ko [liste des fichiers]
m68k (portage non officiel) 6.06.00-1 251,3 ko858,0 ko [liste des fichiers]
ppc64 (portage non officiel) 6.09.02-1 259,4 ko979,0 ko [liste des fichiers]
ppc64el 6.09.02-1 259,3 ko979,0 ko [liste des fichiers]
riscv64 6.09.02-1 249,8 ko751,0 ko [liste des fichiers]
s390x 6.09.02-1 251,2 ko875,0 ko [liste des fichiers]
sh4 (portage non officiel) 6.09.02-1 271,1 ko851,0 ko [liste des fichiers]
sparc64 (portage non officiel) 6.09.02-1 214,2 ko1 303,0 ko [liste des fichiers]
x32 (portage non officiel) 6.09.02-1 256,3 ko827,0 ko [liste des fichiers]