xegaBNF: Compile a Backus-Naur Form Specification into an R Grammar Object

Translates a BNF (Backus-Naur Form) specification of a context-free language into an R grammar object which consists of the start symbol, the symbol table, the production table, and a short production table. The short production table is non-recursive. The grammar object contains the file name from which it was generated (without a path). In addition, it provides functions to determine the type of a symbol (isTerminal() and isNonterminal()) and functions to access the production table (rules() and derives()). For the BNF specification, see Backus, John et al. (1962) "Revised Report on the Algorithmic Language ALGOL 60". (ALGOL60 standards page <http://www.algol60.org/2standards.htm>, html-edition <https://www.masswerk.at/algol60/report.htm>) The grammar compiler is based on the APL2 implementation in Geyer-Schulz, Andreas (1997, ISBN:978-3-7908-0830-X).

Suggests: testthat (≥ 3.0.0)
Published: 2024-02-05
DOI: 10.32614/CRAN.package.xegaBNF
Author: Andreas Geyer-Schulz ORCID iD [aut, cre]
Maintainer: Andreas Geyer-Schulz <Andreas.Geyer-Schulz at kit.edu>
License: MIT + file LICENSE
URL: <https://github.com/ageyerschulz/xegaBNF>
NeedsCompilation: no
Materials: README
CRAN checks: xegaBNF results


Reference manual: xegaBNF.pdf


Package source: xegaBNF_1.0.0.0.tar.gz
Windows binaries: r-devel: xegaBNF_1.0.0.0.zip, r-release: xegaBNF_1.0.0.0.zip, r-oldrel: xegaBNF_1.0.0.0.zip
macOS binaries: r-release (arm64): xegaBNF_1.0.0.0.tgz, r-oldrel (arm64): xegaBNF_1.0.0.0.tgz, r-release (x86_64): xegaBNF_1.0.0.0.tgz, r-oldrel (x86_64): xegaBNF_1.0.0.0.tgz

Reverse dependencies:

Reverse imports: xega, xegaDerivationTrees, xegaGeGene, xegaGpGene


Please use the canonical form https://CRAN.R-project.org/package=xegaBNF to link to this page.