Course Syllabus
Syllabus
CS 3520/6520 Programming Languages
CTIHB 109 MW 11:50-1:10
(livestreamed and recorded via Zoom)
InstructorS
Co-Instructors: |
Ben Greenman <blg@cs.utah.edu> MEB 3252 Matthew Flatt <mflatt@cs.utah.edu> MEB 3256 |
Teaching Assistant: |
Alec Mills <help-cs3520@lists.utah.edu> |
Course Description
Overview
Course | CS 3520/6520 |
Department | School of Computing |
Pre-Requisites | CS 3500 (recommended: CS 3505) |
Credit Hours | 3 |
Semester | Fall 2023 |
Description | Ideas behind the design and implementation of programming languages. Syntactic description; scope and lifetime of variables; runtime stack organization; parsing and abstract syntax; semantic issues; type systems; programming paradigms; interpreters and compilers. |
Goals & Objectives
This course cover concepts of programming languages generally and functional languages in particular, including functions, continuations, syntactic sugar, and type systems. These concepts are explained primarily though a sequence of interpreters and type checkers.
At the end of this course, students will be able to:
- employ a recipe for functional programming: data, examples, template (including natural recursions), implementation, and tests
- use and implement lexical scope, closures, records, objects, and classes
- encode language constructs using constructs that are more primitive, especially lambda-calculus terms
- represent continuations and state explicitly, instead of relying on host-language implementations
- use and implement different evaluation orders: eager and lazy
- explain type soundness and implement sound type checkers for functional and object-oriented languages that include subtyping and parametric polymorphism
Required Materials
Materials for this course:
- Programming Languages: Application and Interpretation, Second Edition, Shriram Krishnamurthi (PDF)
- DrRacket: https://download.racket-lang.org
Communication
Preferred Contact Methods
The easiest way to contact your instructor directly is to use the Inbox, located in the far left Canvas menu.
You can also contact your instructor in the following ways:
Office Hours
The teaching staff will hold office hours according to the following schedule... or by appointment with an instructor (Ben and/or Matthew):
Monday | 4pm - 6pm | MEB 3515 | Alec | queue |
Tuesday | 12pm - 2pm | MEB 3515 | Ben | queue |
Wednesday | 2:30pm-4pm | MEB 3256 | Matthew | queue |
Wednesday | 4pm - 6pm | MEB 3515 | Alec | queue |
Thursday | 12pm - 2pm | MEB 3252 | Ben | queue |
Friday | 10am-10:55am 1pm-3pm |
MEB 3256 | Matthew | queue |
Asking for Help
When asking a question in a place where it makes sense to show your code (i.e., in a direct message to the instructor or a TA):
- Do include the full source of your program as an attachment.
- Do point the instructor/TA to a particular part of the program (e.g., by line number) where you have a question or where you think there’s a problem.
- Don’t send just a fragment of your code. The instructor/TA probably needs more context. Also, If you don’t understand why a fragment of code has problems, then maybe you’re looking at the wrong fragment.
- Don’t include just a screen shot of the program text. Sometimes, the instructor/TA needs to try running your program to see what happens, and screenshots don’t compile. A screen shot is useful sometimes, but in that case, include both program text and a screen image.
- Don’t copy and paste the text into your mail message, because mail transport mangles text. Provide a program as an attachment.
Evaluation
Your performance in this course will be evaluated by:
- Homework assignments (55%)
- Two midterm exams (15% each)
- Final programming assignment (10%)
- Video-lecture quizzes (5%)
Course Policies
Submitting Assignments
All assignments must be submitted via the “Handin” button in DrRacket. Install the uu-cs3520
package and restart DrRacket to get the “Handin” button. See DrRacket and the Handin Button for more information. You can check your handin status and get feedback from the Handin status server.
Each set of lecture videos has an associated quiz on Canvas. Quizzes are due before the corresponding class meeting.
Late Assignments
Late quizzes are not accepted. Homework submissions will be accepted up to 48 hours after the deadline. For each student, up to two late homework submissons (each up to 48 hours late) will be accepted without penalty. After a student's first two late submissions, a late submission within 24 hours of the deadline will be penalized 25%. A submission more than 24 hours late but less than 48 hours late will be penalized 50%.
Large Language Models
The use of large language models (LLMs) such as ChatGPT is permitted on homework assignments. An LLM's contribution to your homework submission must be acknowledged in a comment. Students should take care to use LLMs in a way that fosters their own learning — perhaps, for example, relying on ChatGPT as a way of understanding existing code rather than having it change code or write new code for you. The course staff will not provide technical or financial support to help students use LLMs. Do not rely on LLMs to answer course-related questions (grading, due dates, etc.); ask the course staff instead. The use of LLMs, program interpreters, or remote resources is not permitted during in-class midterm exams.
Some general disclaimers: LLMs may output text that is grossly incorrect, subtly incorrect, or otherwise misleading. LLM companies may track the queries you submit. LLMs may have, in the aggregate, a large cost to the environment that companies do not (or, cannot) fully account for.
Grading
Grading for this course
Each quiz associated with a set of lecture videos is worth a number of points corresponding to the number of questions on the quiz, where each correct answer is worth 1 point. The intent is that you take the quiz after/during watching the videos. At the end of the semester, any cumulative quiz grade of 60% or more is rounded up to 100%. Consequently, you should not be unduly concerned about missed quiz questions, even though there are no retakes, as long as you are following the videos and answering most questions correctly.
Homework is graded on the following scale: check+ = 100% for perfect or nearly perfect work, check = 80% for somewhat flawed but acceptable work, check- = 50% for seriously flawed work, 0 = 0% for missing or completely unacceptable work, and check++ = 110% for perfect work plus extra credit (when specifically offered). All homework assignments are weighted equally.
Exams are graded on a scale of 0 to 100 points.
A final assignment will be similar to a homework assignment, but larger, and the handin process will include a 1-page report. The final assignment serves much the same role as a final exam.
University of Utah grading scale
Letter | Scoring |
---|---|
A | 100% - 94% |
A- | 93.9% - 90% |
B+ | 89.9%–87% |
B | 86.9%–84% |
B- | 83.9% - 80% |
C+ | 79.9%–77% |
C | 76.9%–74% |
C- | 73.9% - 70% |
D+ | 69.9%–67% |
D | 66.9%–64% |
D- | 63.9% - 60% |
E | 59.9%–0% |
Accommodations
Disclaimer
Accommodations will be considered on an individual basis and may require documentation.
Please contact your instructor and/or teaching assistant as soon as possible (preferably shortly before the semester begins) to request accommodations of any kind.
Extreme personal circumstances
Please contact your instructor as soon as possible if an extreme personal circumstance
(hospitalization, death of a close relative, natural disaster, etc.) is interfering with your ability to
complete your work.
Religious Practice
To request an accommodation for religious practices, contact your instructor at the beginning of the semester.
Active Duty Military
If you are student on active duty with the military and experience issues that prevent you from participating in the course because of deployment or service responsibilities, contact your instructor as soon as possible to discuss appropriate accommodations.
Disability Access
All written information in this course can be made available in an alternative format with prior notification to the Center for Disability Services (CDS). CDS will work with you and the instructor to make arrangements for accommodations. Prior notice is appreciated. To read the full accommodations policy for the University of Utah, please see Section Q of the Instruction & Evaluation regulations.
If you will need accommodations in this class, contact:
Center for Disability Services
801-581-5020
disability.utah.edu
162 Union Building
200 S. Central Campus Dr.
Salt Lake City, UT 84112
Changes to the Syllabus
This syllabus is not a contract. It is meant to serve as an outline and guide for your course. Please note that your instructor may modify it to accommodate the needs of your class.
You will be notified of any changes to the Syllabus.
University Policies
COVID-19 Information
Drop/Withdrawal Policies
Students may drop a course within the first two weeks of a given semester without any penalties.
Students may officially withdraw (W) from a class or all classes after the drop deadline through the midpoint of a course. A “W” grade is recorded on the transcript and appropriate tuition/fees are assessed. The grade “W” is not used in calculating the student’s GPA.
For deadlines to withdraw from full-term, first, and second session classes, see the U's Academic Calendar.
Academic Honesty, Plagiarism and Cheating
It is assumed that all work submitted to your instructor is your own work. When you have used the ideas of others, you must properly indicate that you have done so.
It is expected that students adhere to University of Utah policies regarding academic honesty, including but not limited to refraining from cheating, plagiarizing, misrepresenting one’s work, and/or inappropriately collaborating. This includes the use of generative artificial intelligence (AI) tools without citation, documentation, or authorization. Students are expected to adhere to the prescribed professional and ethical standards of the profession/discipline for which they are preparing. Any student who engages in academic dishonesty or who violates the professional and ethical standards for their profession/discipline may be subject to academic sanctions as per the University of Utah’s Student Code: https://regulations.utah.edu/academics/6-410.php
Plagiarism and cheating are serious offenses and may be punished by failure on an individual assignment, and/or failure in the course. Academic misconduct, according to the University of Utah Student Code,
“...Includes, but is not limited to, cheating, misrepresenting one’s work, inappropriately collaborating, plagiarism, and fabrication or falsification of information…It also includes facilitating academic misconduct by intentionally helping or attempting to help another to commit an act of academic misconduct.”
For details on plagiarism and other important course conduct issues, see the U's Code of Student Rights and Responsibilities.
Course Materials Copyright
Sale or distribution of information representing the work product of a faculty member to a commercial entity for financial gain without the express written permission of the faculty member responsible for the course. (“Work product” means original works of authorship that have been fixed in a tangible medium and any works based upon and derived from the original work of authorship.)
Safety at the U
The University of Utah values the safety of all campus community members. You will receive important emergency alerts and safety messages regarding campus safety via text message.
For more safety information and to view available training resources, including helpful videos, visit safeu.utah.edu (Links to an external site.).
To report suspicious activity or to request a courtesy escort, contact:
Campus Police & Department of Public Safety
801-585-COPS (801-585-2677)
dps.utah.edu
1735 E. S. Campus Dr.
Salt Lake City, UT 84112
Wellness at the U
Your personal health and wellness are essential to your success as a student. Personal concerns like stress, anxiety, relationship difficulties, depression, or cross-cultural differences can interfere with a student’s ability to succeed and thrive in this course and at the University of Utah.
Please feel welcome to reach out to your instructor or TA to handle issues regarding your coursework.
For helpful resources to manage your personal wellness and counseling options, contact:
Center for Student Wellness
801-581-7776
wellness.utah.edu
2100 Eccles Student Life Center
1836 Student Life Way
Salt Lake City, UT 84112
Women's Resource Center
801-581-8030
womenscenter.utah.edu
411 Union Building
200 S. Central Campus Dr.
Salt Lake City, UT 84112
Addressing Sexual Misconduct
Title IX makes it clear that violence and harassment based on sex and gender (which includes sexual orientation and gender identity/expression) is a civil rights offense subject to the same kinds of accountability and the same kinds of support applied to offenses against other protected categories such as race, national origin, color, religion, age, status as a person with a disability, veteran’s status, or genetic information.
If you or someone you know has been harassed or assaulted, you are encouraged to report it to university officials:
Title IX Coordinator & Office of Equal Opportunity and Affirmative Action
801-581-8365
oeo.utah.edu
135 Park Building
201 Presidents' Cir.
Salt Lake City, UT 84112
Office of the Dean of Students
801-581-7066
deanofstudents.utah.edu
270 Union Building
200 S. Central Campus Dr.
Salt Lake City, UT 84112
To file a police report, contact:
Campus Police & Department of Public Safety
801-585-COPS (801-585-2677)
dps.utah.edu
1735 E. S. Campus Dr.
Salt Lake City, UT 84112
If you do not feel comfortable reporting to authorities, the U's Victim-Survivor Advocates provide free, confidential, and trauma-informed support services to students, faculty, and staff who have experienced interpersonal violence.
To privately explore options and resources available to you with an advocate, contact:
Center for Student Wellness
801-581-7776
wellness.utah.edu
328 Student Services Building
201 S. 1460 E.
Salt Lake City, UT 84112
Americans With Disabilities Act (ADA)
The University of Utah seeks to provide equal access to its programs, services, and activities for people with disabilities.
All written information in this course can be made available in an alternative format with prior notification to the Center for Disability & Access (CDA). CDA will work with you and the instructor to make arrangements for accommodations. Prior notice is appreciated. To read the full accommodations policy for the University of Utah, please see Section Q of the Instruction & Evaluation regulations.
If you will need accommodations in this class, or for more information about what support they provide, contact:
Center for Disability & Access
801-581-5020
disability.utah.edu
162 Union Building
200 S. Central Campus Dr.
Salt Lake City, UT 84112
Diverse Student Support
Your success at the University of Utah is important to all of us here! If you feel like you need extra support in academics, overcoming personal difficulties, or finding community, the U is here for you.
Student Support Services (TRIO)
TRIO federal programs are targeted to serve and assist low-income individuals, first-generation college students, and individuals with disabilities.
Student Support Services (SSS) is a TRIO program for current or incoming undergraduate university students who are seeking their first bachelor's degree and need academic assistance and other services to be successful at the University of Utah.
For more information about what support they provide, a list of ongoing events, and links to other resources, view their website or contact:
Student Support Services (TRIO)
801-581-7188
trio.utah.edu
Room 2075
1901 E. S. Campus Dr.
Salt Lake City, UT 84112
American Indian Students
The AIRC works to increase American Indian student visibility and success on campus by advocating for and providing student-centered programs and tools to enhance academic success, cultural events to promote personal well-being, and a supportive “home-away-from-home” space for students to grow and develop leadership skills.
For more information about what support they provide, a list of ongoing events, and links to other resources, view their website or contact:
American Indian Resource Center
801-581-7019
diversity.utah.edu/centers/airc
Fort Douglas Building 622
1925 De Trobriand St.
Salt Lake City, UT 84113
Black Students
Using a pan-African lens, the Black Cultural Center seeks to counteract persistent campus-wide and global anti-blackness. The Black Cultural Center works to holistically enrich, educate, and advocate for students, faculty, and staff through Black-centered programming, culturally affirming educational initiatives, and retention strategies.
For more information about what support they provide, a list of ongoing events, and links to other resources, view their website or contact:
Black Cultural Center
801-213-1441
diversity.utah.edu/centers/bcc
Fort Douglas Building 603
95 Fort Douglas Blvd.
Salt Lake City, UT 84113
Students with Children
Our mission is to support and coordinate information, program development, and services that enhance family resources as well as the availability, affordability, and quality of child care for University students, faculty, and staff.
For more information about what support they provide, a list of ongoing events, and links to other resources, view their website or contact:
Center for Childcare & Family Resources
801-585-5897
childcare.utah.edu
408 Union Building
200 S. Central Campus Dr.
Salt Lake City, UT 84112
Students With Disabilities
The Center for Disability and Access is dedicated to serving students with disabilities by providing the opportunity for success and equal access at the University of Utah. They also strive to create an inclusive, safe, and respectful environment.
For more information about what support they provide and links to other resources, view their website or contact:
Center for Disability and Access
801-581-5020
disability.utah.edu
162 Union Building
200 S. Central Campus Dr.
Salt Lake City, UT 84112
Students of Ethnic Descent
The Center for Ethnic Student Affairs offers several programs dedicated to the success of students with varied cultural and ethnic backgrounds. Its mission is to create an inclusive, safe campus community that values the experiences of all students.
For more information about what support they provide, a list of ongoing events, and links to other resources, view their website or contact:
Center for Ethnic Student Affairs
801-581-8151
diversity.utah.edu/centers/cesa/
235 Union Building
200 S. Central Campus Dr.
Salt Lake City, UT 84112
English as a Second/Additional Language (ESL) Students
If you are an English language learner, there are several resources on campus available to help you develop your English writing and language skills. Feel free to contact:
Writing Center
801-587-9122
writingcenter.utah.edu
(Links to an external site.)
2701 Marriott Library
295 S 1500 E
Salt Lake City, UT 84112
English for Academic Success (EAS) Program
801-581-8047
linguistics.utah.edu
2300 LNCO
255 S. Central Campus Dr.
Salt Lake City, UT 84112
English Language Institute
801-581-4600
continue.utah.edu/eli (Links to an external site.)
540 Arapeen Dr.
Salt Lake City, UT 84108
Undocumented Students
Immigration is a complex phenomenon with broad impact—those who are directly affected by it and those who are indirectly affected by their relationships with family members, friends, and loved ones. If your immigration status presents obstacles that prevent you from engaging in specific activities or fulfilling specific course criteria, confidential arrangements may be requested from the Dream Center.
Arrangements with the Dream Center will not jeopardize your student status, your financial aid, or any other part of your residence. The Dream Center offers a wide range of resources to support undocumented students (with and without DACA) as well as students from mixed-status families.
For more information about what support they provide and links to other resources, view their website or contact:
Dream Center
801-213-3697
dream.utah.edu
(Links to an external site.)
200 S. CENTRAL CAMPUS DRIVE
UNION, ROOM 80
SALT LAKE CITY, UT 84112
LGBTQ+ Students
The LGBTQ+ Resource Center acts in accountability with the campus community by identifying the needs of people with a queer range of [a]gender and [a]sexual experiences and responding with university-wide services.
For more information about what support they provide, a list of ongoing events, and links to other resources, view their website or contact:
LGBTQ+ Resource Center
801-587-7973
lgbt.utah.edu (Links to an external site.)
409 Union Building
200 S. Central Campus Dr.
Salt Lake City, UT 84112
Veterans & Military Students
The mission of the Veterans Support Center is to improve and enhance the individual and academic success of veterans, service members, and their family members who attend the university; to help them receive the benefits they earned, and to serve as a liaison between the student veteran community and the university.
For more information about what support they provide, a list of ongoing events, and links to other resources, view their website or contact:
Veterans Support Center
801-587-7722
veteranscenter.utah.edu (Links to an external site.)
418 Union Building
200 S. Central Campus Dr.
Salt Lake City, UT 84112
Women
The Women’s Resource Center (WRC) at the University of Utah serves as the central resource for educational and support services for women. Honoring the complexities of women’s identities, the WRC facilitates choices and changes through programs, counseling, and training grounded in a commitment to advance social justice and equality.
For more information about what support they provide, a list of ongoing events, and links to other resources, view their website or contact:
Women's Resource Center
801-581-8030
womenscenter.utah.edu
411 Union Building
200 S. Central Campus Dr.
Salt Lake City, UT 84112
Inclusivity at the U
The Office for Inclusive Excellence is here to engage, support, and advance an environment fostering the values of respect, diversity, equity, inclusivity, and academic excellence for students in our increasingly global campus community. They also handle reports of bias in the classroom as outlined below:
Bias or hate incidents consist of speech, conduct, or some other form of expression or action that is motivated wholly or in part by prejudice or bias whose impact discriminates, demeans, embarrasses, assigns stereotypes, harasses, or excludes individuals because of their race, color, ethnicity, national origin, language, sex, size, gender identity or expression, sexual orientation, disability, age, or religion.
For more information about what support they provide and links to other resources, or to report a bias incident, view their website or contact:
Office for Inclusive Excellence
801-581-4600
inclusive-excellence.utah.edu (Links to an external site.)
200 S. CENTRAL CAMPUS DRIVE
UNION, ROOM 70
SALT LAKE CITY, UT 84112
Other Student Groups at the U
To learn more about some of the other resource groups available at the U, check out:
The syllabus page shows a table-oriented view of the course schedule, and the basics of course grading. You can add any other comments, notes, or thoughts you have about the course structure, course policies or anything else.
To add some comments, click the "Edit" link at the top.
Course Summary:
Date | Details | Due |
---|---|---|