This course is offered by the CS Department of SUNY Korea. In this course, we will learn Intermediate-level programming concepts and paradigms, including functional programming, object-orientation, basics of type systems, memory management, program and data abstractions, parameter passing and modularity.
This repository is publicly accessible and hosts courseware that will be incrementally added along the semester. We will adapt the courseware from the ones used at SUNY Korea and Stony Brook University in previous years.
-
An understanding of programming paradigms and tradeoffs.
-
An understanding of lambda calculus as a CS foundation.
-
An understanding of functional techniques to identify, formulate and solve problems.
C or higher in CSE 214; CSE major
There is no single textbook for this course, but we will mostly be covering conceptual material from
Scott, Michael L., Programming Language Pragmatics. Morgan Kaufmann; 3rd Edition (2009).
For details pertaining to specific programming languages, the recommended material will mostly be from the following:
Python tutorial: https://docs.python.org/3/tutorial/
OCaml learning material: https://ocaml.org/learn/
- Lectures: Mondays and Wednesdays, 2:00 PM - 3:20 PM, Room B207
- Recitation: Wednesday, 3:30 PM - 4:25 PM, Room B207
- Homework: Announced every Wednesday, with submissions due by the following Wednesday at 11:59 PM KST.
- Office Hours: Mondays, 3:25 PM - 4:25 PM, and Wednesdays, 4:30 PM - 5:30 PM, Room B424.
- TA office hours: Thursday 1:00 PM - 3:00 PM
Zhoulai Fu
Email: <zhoulai dot fu at sunykorea dot ac dot kr>
Young Won Choi
Email: <youngwon dot choi at stonybrook dot edu>
https://stonybrook.zoom.us/j/99671076796?pwd=TGFuZ1lzSXpnSWlpMDB2a2tCRmozUT09
- Homeworks: 20%
- Midterm1: 25%
- Midterm2: 25%
- Final: 25%
- Attendance: 5%
- Bonus: Students who consistently participate or provide constructive feedback will receive a bonus of 0.5 or 1.
Absolute grading will be applied:
- A: [93, 100]
- A-: [90, 93)
- B+: [87, 90)
- B: [83, 87)
- B-: [80, 83)
- C+: [77, 80)
- C: [73, 77)
- C-: [70, 73)
- D+: [67, 70)
- D: [63, 67)
- F: [0, 63)
Force majeure in our policies includes, but is not limited to,
- documented illness or family emergencies.
Note: A documented hospital visit alone is not sufficient to justify force majeure. The doctor's note must clearly state the reason for the absence and the recommended period of absence.
- Attendance will be checked irregularly.
- Arriving late will count as half attendance. "Late" is defined as arriving after the attendance check has been completed. After the attendance check, the TA/Instructor will mark any absences.
- Excuses are granted only in cases of force majeure. See the definition above for "force majeure."
- In the event of discrepancies between the signed attendance sheet and actual physical presence, names will be called. Students involved may be addressed privately.
- In accordance with Korean law, more than 20% absence will result in an automatic F grade.
- Grading will be conducted by both the TA and the Instructor.
- Factual errors in grades will be corrected.
- Non-factual grade disputes will not be considered.
- Plagiarism, including the use of AI-generated solutions for homework, will result in a grade of 0 and will be reported. Students involved may be addressed privately.
- Typewritten submissions are recommended; illegible handwriting may result in a grade of 0.
- Late homework will not be accepted.
- Homeworks submitted after the deadline are only permissible in cases of force majeure. See above for the definition of "force majeure."
- Once homework solutions have been released, no submissions will be accepted under any circumstances.
- Please include [CSE216] in the subject line for all course-related email communication with the instructor.
- Use the instructor's SUNY Korea email address (see above) whenever possible.
- You can expect a reply within 72 hours. If you do not receive a response within this timeframe, kindly send a reminder.
- Emails without [CSE216] in the subject line may be missed.
We adhere to policies similar to those outlined in Stanford's Generative AI Policy Guidance.
- In general, the use of or consultation with generative AI is treated similarly to receiving assistance from another person.
- Using generative AI tools like ChatGPT to substantially complete homework assignments is not permitted.
- Students should acknowledge any use of generative AI tools (beyond incidental use) and should default to disclosing such assistance when in doubt.
- The instructor and TA will be available during scheduled office hours.
- Availability outside of office hours is not guaranteed, and the instructor and TA may respectfully decline appointment requests beyond these times.
If you have a physical, psychological, medical or learning disability that may impact your course work, please contact One-Stop Service Center, Academic Building A201, (82) 32-626-1117. They will determine with you what accommodations, if any, are necessary and appropriate. All information and documentation is confidential.
Students who require assistance during emergency evacuation are encouraged to discuss their needs with instructors and the One-Stop Service Center.
Each student must pursue his or her academic goals honestly and be personally accountable for all submitted work. Representing another person's work as your own is always wrong. Faculty members are required to report any suspected instances of academic dishonesty to the Academic Judiciary Committee or the Department of Academic Affairs, Campus Building A, Room 201, (032) 626-1121.
SUNY Korea expects students to respect the rights, privileges, and property of other people. Faculty are required to report to the Department of Academic Affairs any disruptive behavior that interrupts their ability to teach, compromises the safety of the learning environment, or inhibits students' ability to learn.