Syllabus

Syllabus not written yet!

Syllabus subject to change


CMSC330 Spring 2026

Professor: Anwar Mamat Email: anwar@umd.edu
Professor: Cliff Bakalian Email: cyb@umd.edu
Course Dates: Jan. 26, 2026 - May 8, 2026 Credits: 3
Prerequisites: Minimum grade of C- in CMSC216 and CMSC250

Course Description

A study of programming languages, focusing on their paradigms, features, design, and implementation. We will look at syntax, semantics, and structure in OCaml and Rust while also looking at other regular, context-free, and Turing complete languages. We will explore why so many languages exist, despite the fact that we really only need assembly.

Learning Outcomes

After taking this course, you should be able to:
  • Recognize language features and analyze their effects on problem solving
  • Perform type inference on statements and expressions in statically typed languages
  • Design regular languages and implement their evaluation
  • Solve problems both imperatively and functionally
  • Create and read proofs about the correctness of a program
  • Modify and create programming languages to fit your needs

Grading

You are responsible for all material covered in lecture and discussion, as well as any information posted on the class web page such as announcements, deadlines, policies, etc. During the semester we may provide ungraded homework exercises for additional practice. While we will not collect these exercises, completing them is essential preparation for exams. You may work together on these ungraded homeworks, and you may of course come to office hours for additional help.

Here is probably the part you care about though:

Assignment Percentage Date
Projects   Tentative Release Date
Project 1 5.00% TBD
Project 2 8.00% TBD
Project 3 8.00% TBD
Project 4 8.00% TBD
Project 5 8.00% TBD
Exams
Exam 1 10.00% TBD
Exam 2 10.00% TBD
Final 22.00% May 12 6:30pm - 8:30pm
Quizzes
Quiz 1 5.00% TBD
Quiz 2 5.00% TBD
Quiz 3 5.00% TBD
Quiz 4 5.00% TBD
Lecture Quizzes
Lecture Quizzes 4.00%

Additional Policies

Besides the policies in this syllabus, the University's policies apply during the semester. Various policies that may be relevant appear in the Undergraduate Catalog.

If you experience difficulty during the semester keeping up with the academic demands of your courses, you may consider contacting the Learning Assistance Service in 2201 Shoemaker Building at (301) 314-7693. Their educational counselors can help with time management issues, reading, note-taking, and exam preparation skills.

Names/Pronouns and Self-Identifications

The University of Maryland recognizes the importance of a diverse student body, and we are committed to fostering inclusive and equitable classroom environments. I invite you, if you wish, to tell us how you want to be referred to in this class, both in terms of your name and your pronouns (he/him, she/her, they/them, etc.). Keep in mind that the pronouns someone uses are not necessarily indicative of their gender identity. Visit trans.umd.edu to learn more.
Additionally, it is your choice whether to disclose how you identify in terms of your gender, race, class, sexuality, religion, and dis/ability, among all aspects of your identity (e.g., should it come up in classroom conversation about our experiences and perspectives) and should be self-identified, not presumed or imposed. I will do my best to address and refer to all students accordingly, and I ask you to do the same for all of your fellow Terps.

Students with Disabilities

Students with disabilities who have been certified by Disability Support Services as needing any type of special accommodations should see the instructor as soon as possible during the schedule adjustment period (the first two weeks of class). Please provide DSS's letter of accommodation to the instructor at that time.

All arrangements for exam accommodations as a result of disability must be made and arranged with the instructor at least three business days prior to the exam date; later requests (including retroactive ones) will be refused.

Accessibility and Disability Services

The University of Maryland is committed to creating and maintaining a welcoming and inclusive educational, working, and living environment for people of all abilities. The University of Maryland is also committed to the principle that no qualified individual with a disability shall, on the basis of disability, be excluded from participation in or be denied the benefits of the services, programs, or activities of the University, or be subjected to discrimination. The Accessibility & Disability Service (ADS) provides reasonable accommodations to qualified individuals to provide equal access to services, programs and activities. ADS cannot assist retroactively, so it is generally best to request accommodations several weeks before the semester begins or as soon as a disability becomes known.

For assistance in obtaining an accommodation, contact Accessibility and Disability Service at 301-314-7682, or email them at adsfrontdesk@umd.edu

Basic Needs Security

If you have difficulty affording groceries or accessing sufficient food to eat every day, or lack a safe and stable place to live, please visit UMD’s Division of Student Affairs website for information about resources the campus offers you and let me know if I can help in any way.

Veteran Resources

UMD provides some additional support to our student veterans. You can access those resources at the office of Veteran Student life and the Counseling Center. Veterans and active duty military personnel with special circumstances (e.g., upcoming deployments, drill requirements, disabilities) are welcome and encouraged to communicate these, in advance if possible, to the instructor.

Emergency Preparedness

Emergencies on campus can happen at any time. To prepare, visit prepare.umd.edu or use the emergency symbol in the UMD App to review information. Resources for persons with disabilities are available on the emergency preparedness page of the ADA Coordinator's website.

Notice of Mandatory Reporting

Notice of mandatory reporting of sexual assault, sexual harassment, interpersonal violence, and stalking: As a faculty member, I am designated as a “Responsible University Employee,” and I must report all disclosures of sexual assault, sexual harassment, interpersonal violence, and stalking to UMD’s Title IX Coordinator per University Policy on Sexual Harassment and Other Sexual Misconduct.

If you wish to speak with someone confidentially, please contact one of UMD’s confidential resources, such as CARE to Stop Violence (located on the Ground Floor of the Health Center) at 301-741-3442 or the Counseling Center (located at the Shoemaker Building) at 301-314-7651.

You may also seek assistance or supportive measures from UMD’s Title IX Coordinator, Angela Nastase, by calling 301-405-1142, or emailing titleIXcoordinator@umd.edu. To view further information on the above, please visit the Office of Civil Rights and Sexual Misconduct's website at ocrsm.umd.edu.

Course Evaluations

If you have a suggestion for improving this class, don't hesitate to tell the instructor or TAs during the semester. At the end of the semester, please don't forget to provide your feedback using the campus-wide CourseEvalUM system. Your comments will help make this class better. CourseEvalUM is scheduled to be open sometime December, but this is subject to change by campus.

Right to Change Information

Although every effort has been made to be complete and accurate, unforeseen circumstances arising during the semester could require the adjustment of any material given here. Consequently, given due notice to students, the instructors reserve the right to change any information on this syllabus or in other course materials.

Copyright

All course materials are copyright Dept. of Computer Science, University of Maryland (Marvin Zelkowitz, Jeff Foster, Larry Herman, Atif Memon, Chau-Wen Tseng, Michael Hicks, David Levin, Nelson Padua-Perez, Anwar Mamat, Cliff Bakalian). All rights reserved. Students are permitted to use course materials for their own personal use only. Course materials may not be distributed publicly or provided to others (excepting other students in the course), in any way or format.