อ่าน 2 นาที
การเขียนโปรแกรมเชิงภาษา
การเขียนโปรแกรมเชิงภาษา ( LOP ) [ 1 ] เป็นกระบวนทัศน์การพัฒนาซอฟต์แวร์ที่ "ภาษา" เป็นส่วนประกอบของซอฟต์แวร์ที่มีสถานะเดียวกับวัตถุ โมดูล และส่วนประกอบ [ 2 ] และแทนที่จะแก้ปัญหาใน...
การเขียนโปรแกรมเชิงภาษา
การเขียนโปรแกรมเชิงภาษา ( LOP ) [ 1 ]เป็นกระบวนทัศน์การพัฒนาซอฟต์แวร์ที่ "ภาษา" เป็นส่วนประกอบของซอฟต์แวร์ที่มีสถานะเดียวกับวัตถุ โมดูล และส่วนประกอบ[ 2 ]และแทนที่จะแก้ปัญหาในภาษาการเขียนโปรแกรมทั่วไปโปรแกรมเมอร์จะสร้างภาษาเฉพาะโดเมน (DSL) หนึ่งภาษาหรือมากกว่าสำหรับปัญหานั้นก่อน แล้วจึงแก้ปัญหาในภาษาเหล่านั้น การเขียนโปรแกรมเชิงภาษาได้รับการอธิบายโดยละเอียดเป็นครั้งแรกในบทความLanguage Oriented Programmingของ Martin Ward ในปี 1994 [ 1 ]
แนวคิด
แนวคิดการเขียนโปรแกรมเชิงภาษาใช้แนวทางในการรวบรวมข้อกำหนดในแง่ของผู้ใช้ จากนั้นพยายามสร้างภาษาการใช้งานให้มีความคล้ายคลึงกับคำอธิบายของผู้ใช้มากที่สุด เพื่อให้การจับคู่ระหว่างข้อกำหนดและการใช้งานมีความตรงไปตรงมามากที่สุด การวัดความใกล้เคียงของความคล้ายคลึงนี้คือ "ความซ้ำซ้อน" ของภาษา ซึ่งกำหนดเป็นจำนวนการดำเนินการแก้ไขที่จำเป็นในการใช้งานการเปลี่ยนแปลงข้อกำหนดแบบแยกเดี่ยว ไม่มีการสันนิษฐานล่วงหน้าว่าภาษาใดดีที่สุดสำหรับการใช้งานภาษาใหม่ แต่ผู้พัฒนาสามารถเลือกจากตัวเลือกที่สร้างขึ้นจากการวิเคราะห์การไหลของข้อมูล — ข้อมูลใดที่ได้รับ โครงสร้างของข้อมูลคืออะไร ได้รับเมื่อใด จากใคร และทำอะไรกับข้อมูลนั้น[ 3 ]
การพัฒนา
ภาษาการเขียนโปรแกรม RacketและRascalMPLได้รับการออกแบบมาเพื่อรองรับการเขียนโปรแกรมเชิงภาษาตั้งแต่เริ่มต้น[ 2 ] เครื่องมือ เวิร์กเบนช์ภาษาอื่นๆ[ 4 ]เช่นJetBrains MPS , KermetaหรือXtextมีเครื่องมือสำหรับการออกแบบและใช้งาน DSL และการเขียนโปรแกรมเชิงภาษา[ 5 ]
ดูเพิ่มเติม
ลิงก์ภายนอก
- การเขียนโปรแกรมเชิงภาษา: กระบวนทัศน์การเขียนโปรแกรมถัดไปบทความของ Sergey Dmitriev ที่สำรวจหัวข้อนี้เพิ่มเติม
- สถานะปัจจุบันของเทคโนโลยีเวิร์กเบนช์ภาษา บทสรุปจากโครงการท้าทายเวิร์กเบนช์ภาษาใน: รายงานการประชุมวิชาการนานาชาติว่าด้วยวิศวกรรมภาษาซอฟต์แวร์ ครั้งที่ 6 (SLE'13) ปี 2013
- การเขียนโปรแกรมเชิงภาษาใน MetaLisp วิทยานิพนธ์ ของ Gyuri Lajos ปี 1992 มหาวิทยาลัยลีดส์ระบบนี้ใช้อัลกอริทึมภาษาการแยกวิเคราะห์แบบบนลงล่าง (Top Down Parsing Language) เดียวกันกับที่ใช้ในTree-Meta
สรุปเนื้อหา
ข้อมูลสำคัญจากบทความ
ข้อมูลสำคัญเกี่ยวกับ การเขียนโปรแกรมเชิงภาษา
การเขียนโปรแกรมเชิงภาษา ( LOP ) [ 1 ] เป็นกระบวนทัศน์การพัฒนาซอฟต์แวร์ที่ "ภาษา" เป็นส่วนประกอบของซอฟต์แวร์ที่มีสถานะเดียวกับวัตถุ โมดูล และส่วนประกอบ [ 2 ] และแทนที่จะแก้ปัญหาใน...
แนวคิด
แนวคิดการเขียนโปรแกรมเชิงภาษาใช้แนวทางในการรวบรวมข้อกำหนดในแง่ของผู้ใช้ จากนั้นพยายามสร้างภาษาการใช้งานให้มีความคล้ายคลึงกับคำอธิบายของผู้ใช้มากที่สุด เพื่อให้การจับคู่ระหว่างข้อกำหนดและการใช้งานมีความตรงไปตรงมามากที่สุด...
การพัฒนา
ภาษา การเขียนโปรแกรม Racket และ RascalMPL ได้รับการออกแบบมาเพื่อรองรับการเขียนโปรแกรมเชิงภาษาตั้งแต่เริ่มต้น [ 2 ] เครื่องมือ เวิร์กเบนช์ภาษา อื่นๆ [ 4 ] เช่น JetBrains MPS , Kermeta หรือ Xtext มีเครื่องมือสำหรับการออกแบบและใช้งาน DSL...
ดูเพิ่มเติม
การเขียนโปรแกรมที่เน้นไวยากรณ์ สำเนียงท้องถิ่น ภาษาเฉพาะโดเมน การเขียนโปรแกรมที่ขยายได้