ในที่สุดฉันก็เริ่มเข้าใจความซับซ้อนที่อยู่เบื้องหลังการสร้างล่ามและคอมไพเลอร์ ฉันสร้าง TinyBasic หลายรุ่นรุ่นพื้นฐานปี 1964 (ดาร์ทเมาท์) และการขยายภาษาของฉันเองก่อนที่จะถึงจุดนี้ โครงการล่าสุดคือโครงการที่ฉันเรียกว่าโอเพนซอร์ซพื้นฐาน ... เพราะฉันนึกไม่ออกว่าจะมีฟีเจอร์อื่น ๆ ของภาษาที่น่าสนใจสำหรับผู้คน เพื่อให้สามารถเปิดแหล่งที่มาของภาษาและเข้าใจวิธีการทำสิ่งที่ซับซ้อนบางอย่าง (การสแกนการแยกวิเคราะห์การแปลและการรวบรวม)
Open Source Basic ถูกแปลเป็นภาษาสแต็กเป็นครั้งแรก ภาษาที่ใช้สแต็กนั้นจะถูกตีความและดำเนินการทันทีหรือเปลี่ยนเป็นปฏิบัติการ CLR
คำถามของฉันทั้งหมดต้มลงไปที่นี้:
- อะไรคือคุณสมบัติพื้นฐาน / โครงสร้างของภาษาพื้นฐาน? ฉันมีโครงสร้างพื้นฐานเหล่านี้อยู่แล้ว: การมอบหมาย, นิพจน์, ตัวแปร, ฟังก์ชั่นบางอย่าง (สุ่ม, ToUpper, ToLower), วนรอบ (สำหรับและทำในขณะที่ / จนกว่า), ถ้า (บล็อกและบรรทัดเดียว) การตัดสินใจอื่น ) และเอาท์พุท (พิมพ์) และรูทีนย่อย (โดยไม่มีพารามิเตอร์)
- เมื่อฉัน 'เสร็จสิ้น' การเพิ่มโครงสร้างพื้นฐานในภาษาของฉัน - ฉันจะแยกออกได้อย่างไร เป็นโดเมนอะไร กล่าวอีกนัยหนึ่งทิศทางพื้นฐานของภาษาโอเพนซอร์สที่ฉันควรใช้เมื่อฉันมีโครงสร้างทั่วไปทั้งหมดทำงานหรือไม่
ขอขอบคุณสำหรับเวลาของคุณ,
โดมินิค