This project is an implementation of a Lalr1 and LL(1) top-down Parser.
ll(1): you can give input as grammer and get it's first, follow, and nullable set. it geives you parse table too.
LAlr1: it gets a table as input, and give you optimal table base on Lalr1.
ll(1): First, write your grammar into the input.txt file. Then run the main function.
Lalr(1): Run the main function. The program gets n and m as table dimension. Then you should give your table to the programm.
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
For a part of this project, I got help from these resources:
- Thanks to @GKalhori. Gkalhori's project
- Lalr1
- Ll1
Distributed under the MIT License. See LICENSE.txt
for more information.