15
เขียนล่าม Haskell ใน Haskell
แบบฝึกหัดการเขียนโปรแกรมแบบคลาสสิกคือการเขียนล่าม Lisp / Scheme ใน Lisp / Scheme พลังของภาษาเต็มสามารถใช้เพื่อสร้างล่ามสำหรับส่วนย่อยของภาษา มีการออกกำลังกายที่คล้ายกันสำหรับ Haskell หรือไม่? ฉันต้องการติดตั้งชุดย่อยของ Haskell โดยใช้ Haskell เป็นเครื่องยนต์ แน่นอนว่าสามารถทำได้ แต่มีแหล่งข้อมูลออนไลน์ให้ดูหรือไม่? นี่คือเรื่องราวเบื้องหลัง ฉันกำลังสำรวจแนวคิดในการใช้ Haskell เป็นภาษาเพื่อสำรวจแนวคิดบางอย่างในหลักสูตรโครงสร้างไม่ต่อเนื่องที่ฉันกำลังสอน สำหรับภาคการศึกษานี้ฉันได้ใช้มิแรนดาซึ่งเป็นภาษาเล็ก ๆ ที่เป็นแรงบันดาลใจให้ฮัสเคลล์ มิแรนดาทำประมาณ 90% ในสิ่งที่ฉันอยากทำ แต่ Haskell ทำประมาณ 2,000% :) ดังนั้นความคิดของฉันคือการสร้างภาษาที่มีคุณสมบัติของ Haskell ที่ฉันต้องการและไม่อนุญาตอย่างอื่น ในขณะที่นักเรียนก้าวหน้าขึ้นฉันสามารถเลือก "เปิด" คุณสมบัติต่างๆได้เมื่อพวกเขาเข้าใจพื้นฐานแล้ว "ระดับภาษา" การสอนถูกนำมาใช้เพื่อสอนJavaและSchemeได้สำเร็จ ด้วยการ จำกัด สิ่งที่ทำได้คุณสามารถป้องกันไม่ให้พวกเขายิงตัวตายในขณะที่พวกเขายังคงเชี่ยวชาญไวยากรณ์และแนวคิดที่คุณพยายามสอน และคุณสามารถเสนอข้อความแสดงข้อผิดพลาดที่ดีขึ้นได้