- Variable ✔️
- Assignment ✔️
- Expression ✔️
- Int ✔️
- Boolean ✔️
- Float ✔️
- Char ✔️
- Implicit ✔️
- Explicit ✔️
- Logical ✔️
- Arithmetic ✔️
- Relational ✔️
- Block ✔️
- Context ✔️
- Global scope ✔️
- String ✔️
- String concatenation ✔️
- String relational commands ✔️
- Input and Output Commands ✔️
- if ✔️
- if/else ✔️
- while ✔️
- do/while ✔️
- for ✔️
- switch ✔️
- break ✔️
- continue ✔️
- Functions ✔️
- Vector initialization ✔️
- Vectors ✔️
- Compoused assignment Operators ✔️
- Unary Operators ✔️
- Initialization of variables ✔️
- Error detection ✔️
- Line comment ✔️
- Multi-line comment ✔️
- Scan range ✔️
- If ternary ✔️
- Type Inference ✔️
- Switch with relational operator ✔️
- Function within function ✔️
- Foreach ✔️
- String relational commands ✔️
- New operations (exponentiation, ...)
You will need to have make, Lex/Flex, Yacc and gcc/g++ installed.
-
$sudo apt-get update
-
$sudo apt install make
-
$sudo apt-get install bison flex
-
$sudo apt-get install build-essential
- $make
- $make lx
- $make
- $make mac
To pass the intermediate code generated from the make lx command or by make mac to the test file, follow the steps:
- Delete the test.cpp file and the test executable if they exist.
- Run the command: $make test The file teste.cpp and the executable test will be generated and will be recognizable by the C++ language;