หัวใจสำคัญของ Guile คือเครื่องเสมือนที่มีประสิทธิภาพซึ่งดำเนินการชุดคำสั่งแบบพกพาที่สร้างโดยคอมไพเลอร์ที่ปรับให้เหมาะสมเป็นพิเศษ เครื่องเสมือน Guile ทำงานร่วมกับโค้ดแอปพลิเคชันในภาษา C และ C++ ได้อย่างง่ายดาย นอกเหนือจากภาษา Scheme ซึ่งมีการนำการสนับสนุนข้อกำหนดไปใช้แล้ว
นวัตกรรมที่สำคัญใน GNU Guile 3.0 คือการเปิดตัวคอมไพเลอร์ JIT นอกเหนือจากตัวแปลและคอมไพเลอร์โค้ดไบต์ที่นำเสนอก่อนหน้านี้ ซึ่งดำเนินการในเครื่องเสมือนพิเศษที่เชื่อมโยงกับแอปพลิเคชันในรูปแบบของไลบรารี JIT ช่วยให้คุณสร้างรหัสเครื่องได้ทันทีและเพิ่มความเร็วในการดำเนินการแอปพลิเคชัน Guile ได้อย่างมาก (การทดสอบแสดงความเร็วสูงสุด 4 เท่า) คอมไพเลอร์ JIT รองรับสถาปัตยกรรม x86-64, i686, ARMv7 และ AArch64
การปรับปรุงอื่นๆ:
- รองรับข้อกำหนดภาษา Scheme ใหม่
R7RS และโมดูลไลบรารีที่กำหนดไว้ในนั้น - เครื่องเสมือน Guile ให้การสนับสนุนไบต์โค้ดระดับล่าง เพื่อให้สามารถเพิ่มประสิทธิภาพขั้นสูงได้
- รองรับการรวมการกำหนดและนิพจน์ภายใน (เช่น "(define _ (begin (foo) #f))");
- มีการเสนอการใช้งานประเภทข้อมูลที่มีโครงสร้าง (“บันทึก”) แบบครบวงจร
- การจัดการข้อยกเว้นแบบดั้งเดิม (โยนและจับ) ได้รับการแก้ไขแล้ว
- การเชื่อมโยงที่กำหนดสำหรับไวยากรณ์เพิ่มเติม "else", "=>", "..." และ "_";
- ในคำขอ http, http-get และขั้นตอนอื่นๆ ที่เกี่ยวข้องกับเว็บไคลเอ็นต์ ได้มีการเพิ่มความสามารถในการดาวน์โหลดเนื้อหาผ่านช่องทางการสื่อสารที่เข้ารหัสโดยใช้ TLS พร้อมการตรวจสอบใบรับรองที่ถูกต้อง
ที่มา: opennet.ru