ข้อ จำกัด ทางทฤษฎีของภาษาการเขียนโปรแกรม Stratego มีอะไรบ้าง


10

Strategoเป็นภาษาการแปลงการเขียนโปรแกรม / การเขียนใหม่ DSL

แอนโธนีสโลนได้ทำผลงานบางส่วนทำการดำเนินงานที่รันบน Scala

อะไรคือข้อ จำกัด ทางทฤษฎีของ Stratego ในฐานะภาษาที่ใช้งานได้? (ไม่คำนึงถึงการใช้งาน) เราสามารถเขียนคำสั่ง ycombinator เพื่อการสมัครใน Stratego ได้ไหม?


คำถามที่น่าสนใจมาก
Dave Clarke

คุณหมายถึงการเชื่อมโยงไปยังบทความย่อยสองชุดที่เหมือนกันหรือไม่?
Randall Schulz

การปรับแต่งคำถามนี้มีข้อดีและข้อเสียอะไรบ้างที่มีการขยายภาษาการเขียนโปรแกรมด้วยวิธีนี้เมื่อเทียบกับเทคโนโลยีแมโคร?
Charles Stewart

คำตอบ:


6

ฉันจะไปที่คำตอบ แต่ฉันไม่ได้มีโปรแกรมที่เป็นรูปธรรมสำหรับคุณที่จะลอง ในรายการบล็อก Eelco Visser หนึ่งคุณสามารถเห็นภาพหน้าจอที่มีแคลคูลัสแลมบ์ดาเข้ารหัสใน Stratego (ฉันแน่ใจว่ารหัสนี้มีให้ที่อื่น) เขานำเสนอล่ามสำหรับแคลคูลัสแลมบ์ดาในเมือง Stratego สันนิษฐานว่านี่เพียงพอที่จะแสดงให้เห็นว่า Stratego สมบูรณ์แบบทัวริง

หากคุณมีความสนใจในความคิดที่เฉพาะเจาะจงมากขึ้นเกี่ยวกับการแสดงออกฉันขอแนะนำให้คุณใช้ถ้อยคำใหม่อีกครั้ง

ในแง่ของการใช้งานจริงฉันพบข้อ จำกัด หลักของ Stratego ที่ดำเนินการผ่านโครงสร้างข้อมูลเดียวเท่านั้นคือต้นไม้ที่ถูกแปลง การใช้โครงสร้างข้อมูลอื่น ๆ เช่นตารางสัญลักษณ์นั้นผิดธรรมชาติ (อย่างน้อยก็ใน Stratego ตั้งแต่ 5+ ปีที่แล้ว) ถึงแม้ว่า Stratego จะเหมาะอย่างยิ่งสำหรับการแปลงบนต้นไม้ต้นเดียวการดำเนินการบนต้นไม้สองต้นพร้อมกันนั้นไม่ใช่เรื่องง่าย

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.