CS 421: Programming Languages and Compilers
Machine Problem 1 (MP1)
MP1 will help you learn basic OCaml syntax, and give you some practice writing both simple functions and recursive functions over lists. Keep in mind that your solution must define every required function, otherwise the grading program will not compile and you will receive no points for the entire homework set. For example, if you decide not to implement the function pset (for whatever reason), you need to have it defined as:
let pset lst = raise (Failure(""))
This includes the extra credit functions as well; they must also be defined, but can be defined to just raise Failure as well.

IMPORTANT: Make sure that you read the README file in the grader bundle . This file contains important information.

NOTE: Version 2 of the grader has been posted. It corrects an error in the solution version of the setin function that caused setin to return false even in some cases where it should have returned true. Please download the updated version of the grader.

Also, make sure you read the "Guide for Doing MPs".

Files
mp1.pdf (v1.0)
mp1grader_student.tgz (v1.0)
mp1grader_student_v2.tgz (v2.0)
solution-mp1.ml
full-rubric.ml