Next: , Previous: Semantic Internals, Up: Top

Appendix A Glossary

BNF
In semantic 1.4, a BNF file represented “Bovine Normal Form”, the grammar file used for the 1.4 parser generator. This was a play on Backus-Naur Form which proved too confusing.
bovinate
A verb representing what happens when a bovine parser parses a file.
bovine lambda
In a bovine, or LL parser, the bovine lambda is a function to execute when a specific set of match rules has succeeded in matching text from the buffer.
bovine parser
A parser using the bovine parser generator. It is an LL parser suitable for small simple languages.
context
LALR
lexer
A program which converts text into a stream of tokens by analyzing them lexically. Lexers will commonly create strings, symbols, keywords and punctuation, and strip whitespaces and comments.
LL
nonterminal
A nonterminal symbol or simply a nonterminal stands for a class of syntactically equivalent groupings. A nonterminal symbol name is used in writing grammar rules.
overloadable
Some functions are defined via define-overload. These can be overloaded via ....
parser
A program that converts tokens to tags.
tag
A tag is a representation of some entity in a language file, such as a function, variable, or include statement. In semantic, the word tag is used the same way it is used for the etags or ctags tools.

A tag is usually bound to a buffer region via overlay, or it just specifies character locations in a file.

token
A single atomic item returned from a lexer. It represents some set of characters found in a buffer.
token stream
The output of the lexer as well as the input to the parser.
wisent parser
A parser using the wisent parser generator. It is a port of bison to Emacs Lisp. It is an LALR parser suitable for complex languages.