This project is a python compiler made in Java language. It follows the python lexical analysis to build a Syntax Tree.
This compiler uses JFlex for the syntactic analysis and JCup for the semantic analysis.
The following language aspects and features are interpreted by the compiler:
- Basic types
- Numbers
- Strings
- Booleans
- Arithmetical operators
- Bitwise operators
- Boolean operators
- Structured types such as: lists, dictionaries and tuples
- Blocks and nesting
- Control structures such as: if, if else, while, break, continue, for in
- Functions and predefined functions
- Input/output
- Types conversion
- Error management