รายละเอียดเวอร์ชัน
Pyth 2.0.0 เป็นการอัปเกรดครั้งใหญ่ของภาษา Pyth โดยมุ่งให้การเขียนโปรแกรมภาษาไทยอ่านและเขียนได้ใกล้เคียงภาษาพูดมากขึ้น พร้อมรักษาความเข้ากันได้กับโค้ด Pyth รุ่นเดิม
สิ่งใหม่ใน Pyth 2.0.0
- เพิ่มระบบ Natural Thai Syntax สำหรับเขียนคำสั่งเหมือนภาษาพูด
- รองรับคำสั่งที่มีหรือไม่มีช่องว่าง เช่น ตั้งชื่อ=ชลที และ ตั้ง ชื่อ = ชลที
- ลดความจำเป็นในการใช้ { } และ " " ในคำสั่งทั่วไป
- เพิ่ม Normalization Layer สำหรับจัดรูปแบบคำสั่งก่อนเข้าสู่ Parser
- เพิ่มระบบ Alias และคำพ้องความหมายภาษาไทย
- รองรับคำสั่ง ตั้ง, ตั้งค่า, กำหนด, กำหนดค่า, ให้ และ เปลี่ยนค่า
- รองรับตัวดำเนินการ คือ, เท่ากับ, ไม่เท่ากับ, มากกว่า, น้อยกว่า, และ, หรือ, อยู่ใน และคำสั่งอื่น
- เพิ่ม หรือถ้า, ไม่งั้น, ไม่เช่นนั้น และ มิฉะนั้น
- ใช้คำว่า จบ เพื่อปิด Block ล่าสุดได้
- ยังคงรองรับ จบถ้า, จบฟังก์ชัน และจบวน
ระบบแสดงผลและตัวแปร
- รองรับ แสดง สวัสดี โดยไม่จำเป็นต้องใส่เครื่องหมายคำพูด
- ตรวจอัตโนมัติว่าค่าที่แสดงเป็นข้อความหรือตัวแปร
- ยังคงรองรับ Syntax รุ่นเดิม เช่น แสดง {"สวัสดี"}
- รองรับชื่อตัวแปรภาษาไทย Unicode
เงื่อนไขภาษาพูด
- รองรับ ถ้าชื่อคือชลที
- รองรับ ถ้า ชื่อ = ชลที
- รองรับ ถ้าคะแนนมากกว่า80
- เพิ่ม หรือถ้า และ ไม่งั้น
- รองรับ Nested Block
- Parser ตรวจสอบคำสั่งที่กำกวมก่อนรันเพื่อป้องกันการตีความผิด
GUI แบบภาษาไทย
- เพิ่ม Syntax สำหรับสร้างหน้าต่างแบบภาษาพูด
- รองรับ หน้าต่างปกติ
- รองรับการกำหนดชื่อ กว้าง สูง และตำแหน่งแบบยืดหยุ่น
- เพิ่มข้อความและ GUI Control
- เพิ่ม ช่องรหัส สำหรับ Password Input
- รองรับตัวแปรจากช่องกรอกข้อมูล
- เพิ่ม Event เช่น เมื่อกด, เมื่อเปิดหน้าต่าง, เมื่อปิดหน้าต่าง, เมื่อเปลี่ยนค่า, เมื่อเลือก และเมื่อดับเบิลคลิก
- เพิ่ม แจ้งเตือน
- เพิ่มระบบตั้งไอคอนโปรแกรมและไอคอนหน้าต่าง
ระบบ URL และรูปภาพ
- รองรับการโหลดข้อมูลจาก URL ด้วย Syntax ภาษาไทย
- URL ที่มี :, /, ?, &, =, # และ % จะไม่ถูก Parser แยกผิด
- รองรับข้อมูลรูปภาพจาก URL
- รองรับไอคอนจาก Local File, Relative Path, Absolute Path และ URL
- จำกัด Protocol สำหรับการดาวน์โหลดเป็น HTTP/HTTPS
- มีระบบ Timeout และการจำกัดข้อมูลเพื่อเพิ่มความปลอดภัย
GUI Web
- เพิ่มโครงสร้างสำหรับ หน้าต่างไฟล์ HTML
- รองรับหน้าต่างจาก URL
- รองรับรูปแบบ GUI Web โดยไม่ต้องเขียน WebView ด้วยตนเอง
- เตรียมระบบสำหรับใช้งานไฟล์ PHP ผ่าน Local Server
Advanced Code
- คำสั่ง ไพทอน แบบเดิมยังใช้งานได้
- เพิ่ม alias ทำโดยตรง
- เพิ่ม alias โค้ดขั้นสูง
- ทั้งสามคำสั่งใช้ระบบเดียวกันเพื่อรักษาความเข้ากันได้
ระบบตรวจสอบ
- อัปเกรด pyth ตรวจ ให้รองรับ Natural Thai Syntax
- ตรวจ Block ที่ไม่ได้ปิด
- ตรวจคำสั่งไม่สมบูรณ์
- ตรวจตัวแปร
- ตรวจ URL
- ตรวจ GUI Control
- ตรวจ Event
- ตรวจค่าตำแหน่งและขนาด
- เพิ่ม Error Message ภาษาไทยที่อ่านและแก้ไขได้ง่ายขึ้น
ระบบแปลง
- pyth แปลง ยังคงใช้งานได้
- รองรับ Syntax ภาษาพูดใหม่
- รักษาชื่อตัวแปรภาษาไทย
- ปรับโครงสร้าง Parser ให้สามารถขยายภาษาในอนาคตได้ง่ายขึ้น
Parser ใหม่
Pyth 2.0.0 ใช้กระบวนการประมวลผลแบบ:
Pyth Source
→ Normalizer
→ Thai Phrase Matcher
→ Parser
→ Internal Instruction
→ Execute / Generate
Parser ทำงานแบบ Offline และไม่ต้องใช้ AI หรืออินเทอร์เน็ตในการตีความคำสั่ง
Backward Compatibility
Pyth 2.0.0 ยังคงรองรับ Syntax Pyth รุ่นเดิม โดยระบบจะตรวจรูปแบบเดิมก่อน แล้วจึงตรวจ Natural Thai Syntax ใหม่ ทำให้โปรเจกต์เดิมสามารถทำงานต่อได้โดยไม่จำเป็นต้องเขียนโค้ดใหม่
การทดสอบ
- เพิ่ม Automated Test Suite
- ทดสอบ Syntax เดิม
- ทดสอบ Natural Thai Syntax
- ทดสอบ Unicode ภาษาไทย
- ทดสอบ Alias
- ทดสอบ Condition
- ทดสอบ GUI
- ทดสอบ URL
- ทดสอบ GUI HTML / PHP / URL
- ทดสอบคำสั่ง pyth ตรวจ
- เพิ่ม Examples สำหรับความสามารถใหม่
แนวคิดหลักของ Pyth 2.0.0 คือ
“เขียนเหมือนบอกคอมพิวเตอร์เป็นภาษาไทย แต่ยังคงมี Parser ที่แน่นอน คาดเดาได้ และทำงาน Offline”