CS 241e - Foundations of Sequential Programs (Enriched)
Assignments must be submitted using Marmoset.You may do the assignments either on your own computer (recommended) or on the linux.student.cs.uwaterloo.ca server managed by CSCF and accessible from the terminals in the labs. Either way, follow the appropriate instructions below to setup your environment.
Using your own computerFirst ensure that you have the following software installed:
Using linux.student.cs.uwaterloo.caLogin to one of the labs, and open a terminal connected to linux.student.cs.uwaterloo.ca. If you are using ssh to connect to linux.student.cs.uwaterloo.ca, use the -Y option to enable running graphical programs: ssh -Y linux.student.cs.uwaterloo.ca. After connecting to linux.student.cs.uwaterloo.ca, run the command source /u/cs241e/setup. This command sets your environment to give you access to all of the tools you will need for CS 241E.
The command idea.sh will then start IntelliJ IDEA.
Assignment skeleton codeTo begin the assignments, download the skeleton code that we provide: instructions at this link.
Marmoset will run a number of automated tests on your solutions and grade them automatically. You may submit your solutions as many times as you wish prior to the submission deadline. Your assignment mark is determined by the number of tests that your submission passes.
You must test your submissions yourself prior to submitting them to Marmoset. You should not be using Marmoset as the only means of testing your solutions.
To prepare a submission to Marmoset, click on the box icon in the bottom-left corner of IntelliJ IDEA, and select SBT Console from the menu. Click on the green play triangle icon. In the console, type packageSrc. You should get the message: Packaging .../target/scala-2.12/for-marmoset.jar. This file now contains all of your code, ready to be submitted to Marmoset. Load Marmoset in your web browser, and submit this for-marmoset.zip file to Marmoset.