COMP 232 – Programming Languages – Spring 2024

  • Course URL:
  • Canvas Page:
  • Course Material: To be given by instructor
  • CI Catalogue URL
  • Instructor: Michael Soltys <>
  • Course Outline: This course is an introduction to the fascinating field of programming languages. The course will examine design, implementation, and use of high-level programming languages. Topics include: historical background; how languages reflect different design philosophies and user requirements; technical issues in the design of imperative (a.k.a., procedural) programming languages; other approaches to programming: functional programming, logic programming, and object-oriented programming.
  • Lectures: T 12:00-1:50 and 12:00-2:50 Th, online
  • Textbook: No textbook, but detailed course notes will be provided to students at no cost.
  • Grading: 4 assignments worth 15% each; two midterms worth 15% each, and a final exam worth 20%.
  • Missing or late work policy: Assignments are worth 15 points, and late assignments will have one (5) point deducted for each day they are late (up to 3 days; 0 after that). If a midterm or final exam is missed, this will be dealt with on a case by case basis, requiring a letter from the students explaining the situation. Please note that in the industry, work has to both meet requirements and be delivered on time.
  • How to avoid plagiarism: Each student should work independently on the assignments and tests; verbal discussions of assignments among students are allowed (indeed encouraged), but you should not share code, and you should not leave such discussions with written notes.
  • Attendance: Students are encouraged but not required to attend the lectures. The assignments will be posted online, and submitted with GitHub classroom. The midterms and the final exam will be written in Canvas (multiple-choice) during the Tuesday lecture (see dates below).
Jan 23Course Introduction
AWS Cloud9
Jan 30Markdown
Feb 6Python
Feb 13Node
Feb 20JavaAssignment 1 – Python/JSON
Feb 27Prolog
Mar 5Ruby
Mar 12Midterm 1
Assignment 2 – Node
March Break
Mar 26Haskell
Apr 2PerlAssignment 3 – Java
Apr 9Midterm 2
Apr 16C/C++
Apr 23Scheme
Apr 30RustAssignment 4 – C
May 7Final Exam
  • Students with disabilities: Cal State Channel Islands is committed to equal educational opportunities for qualified students with disabilities in compliance with Section 504 of the Federal Rehabilitation Act of 1973 and the Americans with Disabilities Act (ADA) of 1990. The mission of Disability Accommodation Services is to assist students with disabilities to realize their academic and personal potential. Students with physical, learning, or other disabilities are encouraged to contact the Disability Accommodation Services office at (805) 437-8510 for personal assistance and accommodations. Please discuss your arrangements with the instructor as soon as possible.
  • Check this web page regularly for announcements.