this compiler is developed for compiler design course - fall 2020
- based on 32 bit mips architecture
- no dynamic runtime allocating
The project only meets the requirements which were highlighted by course assistants and is not a full compiler for real usage.
Cool Compiler uses a number of projects to work properly:
- PGen - Parser generator (based on Syntax graphs concepts)
- JFlex - Lexical analyser generator
- Dillinger - Markdown editor
In order to run project having java installed:
-
Put .cool app, compiler-phase3.jar and table.npt ( available at parser package) in a directory
-
Run the program by following command:
java -jar compiler-phase3.jar --input [YOUR_IBPUT_FILE_DIR] --output [OUTPUT_FILE_DIR] --table [TABLE DIR]
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
- Add runtime exception handling feature
- Add object oriendted programming support
- Add higher-order functions
MIT
Free Software, Hell Yeah!