01204435 มโนทัศน์ภาษาโปรแกรม
หน้านี้เป็นหน้าของรายวิชา 01204435 มโนทัศน์ภาษาโปรแกรม (Programming language concepts)
เนื้อหา
ประกาศ
- เกณฑ์การให้คะแนน: สอบกลางภาค 30%, สอบปลายภาค 30%, การบ้าน 13%, นำเสนอภาษาโปรแกรม 13%, โครงงานเล็ก (จะอธิบายในคาบต่อไป) 14%
- สำหรับการเรียนในวันที่ 18 ก.ย. ให้ติดตั้ง DrRacket มาด้วย
- สำหรับการเรียนในวันที่ 18 มิ.ย. ให้ติดตั้ง Haskell มาด้วย โดยอาจจะติดตั้ง the Haskell Platform หรือจะติดตั้งเฉพาะ the Glasgow Haskell Compiler ก็ได้
- สำหรับเนื้อหาภาคทฤษฎีเราจะใช้เนื้อหาจากวิชา CS242 Programming Languages จาก Stanford University
- เจอกันใน facebook
การบ้าน
การส่งการบ้านโปรแกรมให้เมล์ไปที่อีเมล์ผู้สอน (เจ ไอ ที ที เอ ที แอต จีเมล์ ดอต คอม) โดยใช้ชื่อ subject ขึ้นต้นด้วย [01204435]
- การบ้าน 1: (การบ้านโปรแกรม) ทำแบบฝึกหัด Haskell 1 ใน 01204435/haskell1 ในส่วน แบบฝึกหัด Recursion ข้อ 1-4
- การบ้าน 2: (การบ้านทฤษฎี) ทำแบบฝึกหัดในเอกสารที่แจก: 3.2, 3.6, 6.1, 6.5, 6.6, 7.1, 7.7, 7.8, 7.12
- หมายเหตุ: ใน ML fn y => f(y) จะเป็นการสร้าง anonymous function ซึ่งจะเหมือนกับ \y -> (f y) ใน Haskell
เนื้อหา
สัปดาห์ที่ 1
- อังคารที่ 11 มิ.ย.: Introduction, Javascript
- เอกสารอ้างอิงเกี่ยวกับ javascript: หน้า JavaScript จาก MDN
- รวม e-book JavaScript
- พฤหัสบดีที่ 13 มิ.ย.: ทดลอง Node.js
- การติดตั้ง node.js อ่านจาก node.js wiki
- คลิปสำหรับดูเล่นก่อนเรียน: Introduction of Node JS by Ryan Dahl (Creator of Node Js)
- การทดลอง javascript/node.js
สัปดาห์ที่ 2
- อังคารที่ 18 มิ.ย.: ทดลอง Haskell
- อ่านประกอบ: Real World Haskell
- พฤหัสบดีที่ 20 มิ.ย.: Introduction to Haskell (อ้างอิง slide จากวิชา cs242)
สัปดาห์ที่ 3
- อังคารที่ 25 มิ.ย.: Foundations. (อ้างอิง slide จากวิชา cs242)
- พฤหัสบดีที่ 27 มิ.ย.: Scope and stack (อ้างอิง slide จากวิชา cs242)
สัปดาห์ที่ 4
- อังคารที่ 2 กค.: Scope and stack (ต่อ) (อ้างอิง slide จากวิชา cs242)
- พฤหัสบดีที่ 4 กค.: ทดลอง Haskell 2
สัปดาห์ที่ 5
- อังคารที่ 16 กค.: Types and type inference
- พฤหัสบดีที่ 18 กค.: ทดลอง Racket (Scheme) เอกสาร
สัปดาห์ที่ 6
- พฤหัส 25 ก.ค.: Type classes
สัปดาห์ที่ 7
- อังคาร 6 ส.ค.: Monad I
- พฤหัส 8 ส.ค.: ปฏิบัติการ: ค้นข้อมูลเกี่ยวกับภาษาโปรแกรม