This initial homework is designed to introduce you to the Bril (Big Red Intermediate Language) project and to help you set up your development environment.
Bril is the intermediate representation (IR) that we will use extensively throughout this course.
- Clone your forked repository recursively to ensure you get the Bril submodule:
git clone --recursive <url-of-your-forked-repo>
- Familiarize yourself with the Bril project by reading the Bril README.
You need to complete the install_bril.sh script. This script will set up the Bril environment by installing necessary tools.
Here's what the script needs to do:
- Install Deno: (This might already be available in your environment) A modern runtime for JavaScript and TypeScript. This is used for the Bril interpreter. Note: If Deno is missing in your environment, follow the instructions on Deno to install it.
- Install Flit: Simplifies the process of putting Python packages on PyPI, used for Python tools in the Bril project.
- Install Bril Tools:
- bril2json: Converts Bril programs from text to JSON format.
- bril2txt: Converts Bril programs from JSON back to text format.
- brili: The Bril interpreter, which executes code from its JSON format.
The script should ensure these tools are installed and accessible in the user's PATH.
Note: The script must work on any machine, not just yours. Ensure that the PATH modifications and installations are general enough to work on any system.
Do not modify any files within the .github directory.
Viewing Your Results:
- GitHub Actions Page:
- Go to the "Actions" tab in your GitHub repository.
- Click on the latest workflow run.
- Autograding Reporter:
- In the same workflow run page, look for the "Autograding Reporter" step.
- The "Grand total tests passed" will show you how many of the test cases you've successfully completed.
- Complete the task in the install_bril.sh script.
- Test your changes locally to ensure they work as expected.
- Commit your changes to your forked repository:
git add install_bril.sh
git commit -m "Completed Homework 0"
git push origin main




