CS181: Programming Languages
Professor: Dr. Teodor C. Przymusinski,
(951) 787-5015
Lecture: Monday, Wednesday, Friday 5:10-6:00 PM SPROUL 2340
Office hours: Monday, Wednesday, Friday 4:00-5:00 PM, SURGE 335 or by appointment.
TA: Vladimir Vacic
Labs: Section 21, Thursday 2:10 - 5:00 PM, SURGE 171
Consultations: Monday 6:10 - 7:00 PM, Tuesday 4:10 - 5:00 PM, Wednesday 6:10 - 7:00 PM, SURGE 282 or by appointment.
TA: Christos Koufogiannakis
Labs: Section 22, Friday 8:10 - 11:00 AM, SURGE 170
Consultations: Wednesday 6:10 - 7:00 PM, Friday 12:00 AM - 2:00 PM, SURGE 282 or by appointment.
Mailing List
A class mailing list: cs181@lists.cs.ucr.edu will be established to disseminate information pertaining to this class.
Make sure to sign-up for the mailing list in order to receive prompt information about class assignments, additional resources and other pertinent matters.
Students should sign up for it at: https://www.cs.ucr.edu/mailman/listinfo/cs181
IMPORTANT: only UCR e-mail addresses will be allowed on the list!
Textbooks
Required: C. Ghezzi and M.Jazayeri, Programming Language Concepts, John Wiley.
Any Prolog manual or textbook will be helpful - several are available in the library.
Additional Resources
Prolog:
Syllabus
Full text of the Course Syllabus.
Past projects
Past exams
Lab 1
Topics:
- History of programming languages
Class presentation:
Lab 2
Topics:
- Introduction to Prolog
- Facts
- Rules
- Questions
- Variables and constants
Class presentation:
Lab assignment:
Lab 3
Topics:
Class presentation:
Lab assignment:
Lab 4
Topics:
- Static vs. Dynamic Typing
- Pointers vs. References
- Prolog examples
Class presentation:
Lab assignment:
Lab 5
Topics:
- Accumulators and debugging in Prolog
- Prolog trace example
- Prolog in action: Towers of Hanoi
Class presentation:
Lab assignment:
Lab 6
Topics:
- Reading and writing in Prolog
- Prolog in action: Searching a maze
- Prolog in action: Searching directed graphs
- SimpleSem
Class presentation:
Lab assignment:
Lab 7
Topics:
Class presentation:
Practice problems:
Lab assignment:
Lab 8
Topics:
Class presentation:
Practice problems:
Lab assignment:
Project 1
Project files:
Midterm
Midterm files:
Lab 9
Topics:
- SimpleSem C4
- Project discussion
Class presentation:
Practice problems:
Lab assignment:
Project 2
Project files:
Lab 10
Topics:
- SimpleSem C4
- Project discussion
Class presentation:
Practice problems:
Lab assignment: