Fall Semester, 2021

Programming Languages

CS320, Fall Semester, 2021

The course uses Piazza instead of KLMS. Please join the Piazza class at the following link: https://piazza.com/kaist.ac.kr/fall2021/cs320.


Sukyoung Ryu (류석영)

  • Email: sryu.cs@kaist.ac.kr

  • Office: CS Building Room 4407

  • Phone: x3538

  • TA Email: cs320_ta@kaist.ac.kr

Hours and Place

  • Lectures

    • 14:30 – 15:45 Mondays and Wednesdays, Online (Youtube & Zoom)



The goal of this course is to help students:

  1. learn new languages quickly,

  2. evaluate various languages and pick the most suitable one for a given task,

  3. know when and how to design a little language, and

  4. understand the effects of languages on thought and communication.

We will study programming language concepts, not as paradigms but as a set of basic building blocks, by using the Scala programming language to implement interpreters for the concepts.


  • Midterm Exam: 30%

  • Final Exam: 40%

  • Project: 20%

  • Attendance/Quiz/Homework: 10%

Schedules & Lecture Materials