Alle Optionen
bullseye  ] [  bookworm  ] [  trixie  ] [  forky  ] [  sid  ]
[ Quellcode: bisonc++  ]

Paket: bisonc++ (6.09.02-1 und andere)

Links für bisonc++

Screenshot

Debian-Ressourcen:

Quellcode-Paket bisonc++ herunterladen:

Betreuer:

Externe Ressourcen:

Ähnliche Pakete:

Bison-style parser generator for C++

Bisonc++ was designed after `bison++', created by Alain Coetmeur. Bisonc++ adds to bison++ a cleaner class-design, using a base-class to communicate lexical tokens to a lexical scanner.

Since bisonc++ generates the parser class as well as the parsing function. The class can easily be provided with additional members without needing polymorphic functions. Consequently, classes generated by bisonc++ have no virtual members and actually have but one public member: parse(), replacing the old-style bison and bison++ yyparse() function.

Bisonc++ offers many options, among which an option to define classes generated by bisonc++ in a separate namespace. This allows developers to define additional symbols, even outside of the class generated by bisonc++, without encountering name-collision problems. With bisonc++, artificial means to prevent name-collisions, like bison and bison++'s yy-convention are not required anymore when using bisonc++. Bisonc++ merely generates C++ code. If C code is required, bison should be used. Bisonc++'s grammar requirements are highly compatible with bison's requirements, so converting a bison grammar into a bisonc++ grammar should be fairly simple.

In addition to the bisonc++ parser generator itself and several skeleton files, the package contains an extensive man-page, a full manual rewritten after the original bison manual, and several examples.

Some history: Bisonc++ versions 0.98 is a complete rewrite of an LALR(1) parser generator, as described in Aho, Sethi and Ullman's (1986) book `Compilers' (a.k.a. the `Dragon Book'). Version 0.98 was completed in May 2005. Another major rewrite was completed one year later, May 2006, resulting in version 1.00.

Markierungen: Software-Entwicklung: Code-Erzeugung, C++-Entwicklung, devel::library, implemented-in::c++, Benutzer-Schnittstellen: Kommandozeile, Rolle: role::devel-lib, role::program, Zweck: Hilfswerkzeug

Andere Pakete mit Bezug zu bisonc++

  • hängt ab von
  • empfiehlt
  • schlägt vor
  • erweitert

bisonc++ herunterladen

Download für alle verfügbaren Architekturen
Architektur Version Paketgröße Größe (installiert) Dateien
alpha (inoffizielle Portierung) 6.09.02-1 240,7 kB918,0 kB [Liste der Dateien]
amd64 6.09.02-1 254,2 kB860,0 kB [Liste der Dateien]
arm64 6.09.02-1+b1 235,5 kB852,0 kB [Liste der Dateien]
armhf 6.09.02-1 230,8 kB722,0 kB [Liste der Dateien]
hppa (inoffizielle Portierung) 6.09.01-1 238,5 kB814,0 kB [Liste der Dateien]
i386 6.09.02-1 267,4 kB870,0 kB [Liste der Dateien]
ia64 (inoffizielle Portierung) 6.08.00-1 278,7 kB1.239,0 kB [Liste der Dateien]
loong64 6.09.02-1 247,3 kB915,0 kB [Liste der Dateien]
m68k (inoffizielle Portierung) 6.06.00-1 251,3 kB858,0 kB [Liste der Dateien]
ppc64 (inoffizielle Portierung) 6.09.02-1 259,4 kB979,0 kB [Liste der Dateien]
ppc64el 6.09.02-1 259,3 kB979,0 kB [Liste der Dateien]
riscv64 6.09.02-1 249,8 kB751,0 kB [Liste der Dateien]
s390x 6.09.02-1 251,2 kB875,0 kB [Liste der Dateien]
sh4 (inoffizielle Portierung) 6.09.02-1 271,1 kB851,0 kB [Liste der Dateien]
sparc64 (inoffizielle Portierung) 6.09.02-1 214,2 kB1.303,0 kB [Liste der Dateien]
x32 (inoffizielle Portierung) 6.09.02-1 256,3 kB827,0 kB [Liste der Dateien]