A C/C++ implementation of interpreter for the bellowing syntax:
Parser rules:
expression ::= number ( ( '+' | '-' ) number )*
Scanner rules:
number ::= ( integer ( '.' integer? )? | '.' integer ) ( ( 'e' | 'E' ) ( '+' | '-' )? integer )?
integer ::= ( '0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' )+
- Charles N. Fischer et al, Crafting a Compiler, 2009
- Ronald Mak, Writing Compilers and Interpreters: A Software Engineering Approach, 3rd Edition
- Terence Parr, Language Implementation Patterns: Create Your Own Domain-Specific and General Programming Languages, 2010
- Keith D. Cooper et al, Engineering a Compiler, 2nd Edition
- Luna Programming Language