You can find the romanian version of this document here. Test-driven development principles were considered in this project.
- for improved redability, we recommand VS Code and the "Better Comments" extension
- commands to be passed in project root terminal:
- "./setup.sh" - checks for bison and flex installation and builds our compiler
- "./build.sh" - builds the custom compiler
- "./src/discard.sh" - delete the additional files
- "./run.out <file_path>" - compiles and runs the source code
- C++
- Flex
- Yacc/Bison
-
All variables/parameters/objects have:
- explicit value(s)
- implicit value(s) if there is no given definiton
- e. g. 0, 0.0, '0', "", true
- no container will ever be "undefined"
-
x-dimensional arrays, where x could be any natural value not NULL. the same is assured for the size of each dimension.
-
Each file from examples directory is responsable of one grammar rule.
-
See implementation details for more.
-
Default parameters for functions
- No type qualifiers
- No pointers, refferences
- No struct, union
- No inheritence of classes