CMSC330 (Organization of Programming Languages) Projects in Ruby, OCaml, and Prolog