CS:APP3e, Bryant and O'Hallaron (original) (raw)
CS:APP Lab Overview
All CS:APP labs share the following features:
- Class tested at Carnegie Mellon. The authors developed and refined the labs over a period of 10 years, on classes of 150-250 students. The course gets high evaluations from the students, who typically cite the labs as the reason they love the course.
- Automatic testing and evaluation drivers. Students develop their solution in a C file, which they then link into a C driver program. The driver runs their solution, checks for correctness, and produces a quantitative evaluation of their solution. Students use this feedback to incrementally refine their solutions.
- Solutions. Instructors are provided with complete solutions for each Lab.
- Autograders. Each lab (with the exception of the Proxy Lab) comes with an Perl autograder that runs the driver program on each student handin file and prints an ASCII grade sheet for each student.
- Complete lab writeups. Each lab comes with a complete writeup (in Latex) that provides context, step by step instructions, and an explanation of the evaluation criteria.