ผลต่างระหว่างรุ่นของ "01204435"

จาก Theory Wiki
ไปยังการนำทาง ไปยังการค้นหา
แถว 43: แถว 43:
 
| 3 || 12,14,16 ธ.ค.  
 
| 3 || 12,14,16 ธ.ค.  
 
|| หยุดอีก
 
|| หยุดอีก
|| Lambda Calculus
+
|| Lambda calculus
 +
|| แลบ Haskell (1)
 +
||
 +
|-
 +
| 4 || 19,21,23 ธ.ค.
 
|| Algol-type languages
 
|| Algol-type languages
 +
|| แลบ Haskell (2)
 +
||
 
||
 
||
 
|}
 
|}

รุ่นแก้ไขเมื่อ 23:04, 6 ธันวาคม 2565

หน้านี้เป็นหน้าของรายวิชา 01204435 มโนทัศน์ภาษาโปรแกรม (Programming language concepts)

ในมุมมองที่กว้างที่สุด ภาษาโปรแกรมเป็นเครื่องมือสำหรับอธิบายการคำนวณ (computation) อย่างไรก็ตามมุมมองของการคำนวณนั้นมีได้หลากหลาย เป็นจุดกำเนิดที่ทำให้เกิดภาษาโปรแกรมที่วางอยู่บนกระบวนทัศน์ (paradigm) ที่แตกต่างกันจำนวนมากมาย วิชานี้ มีเป้าหมายที่จะศึกษาแนวคิดต่าง ๆ ที่มีใช้ในภาษาโปรแกรมสมัยใหม่ เพื่อให้เข้าใจกระบวนการทำงาน ขีดจำกัด และผลกระทบที่มีต่อกระบวนการคิดวิเคราะห์ของผู้ใช้ เราจะมองภาษาภายใต้มุมมองของการออกแบบ (language design) เพื่อที่จะได้เห็นข้อดี-ข้อเสีย สำหรับทางเลือกต่าง ๆ นอกจากนี้ เราจะสนใจแนวคิดพื้นฐาน พร้อมกับเน้นกระบวนทัศน์ภาษาโปรแกรมที่สำคัญได้แก่การโปรแกรมเชิงฟังก์ชันและการโปรแกรมเชิงวัตถุ

ประกาศ

  • YouTube playlist ของเนื้อหา

การบ้าน

หัวข้อ

ด้านล่างเป็นหัวข้อแบบร่าง ๆ เท่านั้น อาจมีการเปลี่ยนแปลงได้เรื่อย ๆ
  • Introduction.
  • Lisp. Lambda calculus.
  • Functional programming (with Haskell)
    • Types & type inference
    • Higher-order functions
    • Type classes
    • IO
  • Controls
  • Scopes and memory management
  • Object-oriented programming
  • Concurrency

เนื้อหาและตารางเรียน

สัปดาห์ วันที่ จันทร์ พุธ ศุกร์ หมายเหตุ
1 28,30 พ.ย., 2 ธ.ค. แนะนำภาพรวม
จัดการการลงทะเบียน
คลิป introduction [1] แลบ Scheme
คลิป, เอกสาร
2 5,7,9 ธ.ค. หยุด แลบ Scheme (ต่อ) คลิป LISP [2]
3 12,14,16 ธ.ค. หยุดอีก Lambda calculus แลบ Haskell (1)
4 19,21,23 ธ.ค. Algol-type languages แลบ Haskell (2)

เอกสารอ้างอิง

ลิงก์