The goal of the first project is to implement a scanner, and a parser for the uC language, specified by [uC BNF Grammar].
Study the specification of uC grammar carefully. To complete this first project, you will use the PLY, a Python version of the lex/yacc toolset with same functionality but with a friendlier interface
First and foremost, before running the project, one should setup the virtual environment. For this project we use Pipenv as the package manager. To install it just run the command:
$ pip3 install pipenv
And then to start a virtual environment just run this command:
$ pipenv shell
After setting up the virtual environment, all required module should be installed with this command:
$ pipenv install
To check if everything was done correctly, run this command inside the virtual env to run all tests:
$ pipenv run tests
All tests should run and pass.