- Course URL: http://prof.msoltys.com/?page_id=6902
- Canvas Page: https://cilearn.csuci.edu/courses/27904
- Course Material: To be given by instructor
- CI Catalogue URL
- Instructor: Michael Soltys <michael.soltys@csuci.edu>
- 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 23 | Course Introduction AWS Cloud9 GitHub | |
Jan 30 | Markdown JSON | |
Feb 6 | Python | |
Feb 13 | Node | |
Feb 20 | Java | Assignment 1 – Python/JSON |
Feb 27 | Prolog | |
Mar 5 | Ruby | |
Mar 12 | Midterm 1 Assignment 2 – Node | |
March Break | ||
Mar 26 | Haskell | |
Apr 2 | Perl | Assignment 3 – Java |
Apr 9 | Midterm 2 | |
Apr 16 | C/C++ | |
Apr 23 | Scheme | |
Apr 30 | Rust | Assignment 4 – C |
May 7 | Final 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.