Toy Language Interpreter coded in Java for the Advanced Methods of Programming course during the BBU Computer Science Bachelor's Program. JavaFX was used for the GUI.
- Layered Architecture
- Encapsulation
- Interfaces and Abstract Classes
- Java Streams
- Model-View-Controller pattern
- Boolean
- Integer
- String
- Reference
- Logical, arithmetic and relational expressions
- Variable declaration and assignment
- Printing on the console
- If/Switch statements
- Flow Control Statement: While
- File Handling: opening/closing of a file, reading operations
- Heap allocation, reading and writing
- Concurrency: Fork Statement
- Shared heap across all the program states - allocation, reading, writing, as well as the garbage collector;
- Unique identifier for each program state, including the ones resulting from executing the Fork statement;
- GUI, for ease of use.