CSE-321 Programming LanguagesOverview 박성우 POSTECH March 4, 2014
Course Outline • Topics to be covered: • mathematical foundation of programming languages • theory of programming languages • type theory • designing programming langauges • implementing programming languages • Topics not to be covered: • history of programming languages • comparison of various programming languages
CSE-321 Programming Langauges • Course webpagehttp://pl.postech.ac.kr/~gla/cs321
Online Lectures • We will provide online lectures on the webpage. • Recorded in 2012 or this year. • Online lectures will be uploaded before class.
Grading • Assignments 60%Midterm 15%Final 20%Quiz 5% • 8 or 9 programming assignments • 3 or 4 written quizzes in class • To get an A, you have to complete all assignments.
Discussion Board • telnet pl.postech.ac.kr, board 321 • Create an ID to ask questions.
Anonymous Feedback • http://pl.postech.ac.kr/~gla/feedback/
Course Wiki • http://pl.postech.ac.kr/wiki/doku.php?id=cs321:start • ID: cs321, password: pl • Share your findings with your classmates! • You can also create a private ID.
Objective Caml (OCaml) • Programming language for your assignments • We will use OCaml 4.01. • Read ‘The core language’ and ‘The module system’ sections in the OCaml manual.
No Cheating • Read the document on the disciplinary policy. • 2011 • 5 students cheated (out of 35 students) • We have developed clonechecker for OCaml. • We will check all your programs at the end of the semester. • Cheating will get you an F.
programming.postech.ac.kr • Linux machine for your assignments. • OCaml 4.01 is already installed. • Use your Hemos ID to log in. • Contact Hemos Team to request an ID. • Your handin directory is located at: /home/class/cs321/handin/<your Hemos ID>
Assignment 1 • Assignment 1 will be out tonight. • Due at 11:59pm, March 11 (next Tuesday) • Details of the instruction are all in the handout. • If you don't find your handin directory, email firstname.lastname@example.org. • You may program on Windows or Linux, but make sure that your program compiles! • Otherwise your program will not be graded.