เปิดตัว Jacquard ภาษาโปรแกรมมิ่งแนวคิดใหม่ ออกแบบมาเพื่อให้ AI เขียนโค้ด และมนุษย์เป็นผู้ตรวจสอบ
นักพัฒนาเปิดตัวภาษาโปรแกรมมิ่งเชิงทดลองชื่อ 'Jacquard' ที่มีโครงสร้างและไวยากรณ์ซึ่งเกิดจากการให้ AI วิเคราะห์ภาษาอื่น ๆ เพื่อสร้างภาษาที่ AI น่าจะ 'ถนัด' ในการเขียนเอง
ในยุคที่ AI เข้ามามีบทบาทในการเขียนโค้ดมากขึ้น นักพัฒนาซอฟต์แวร์รายหนึ่งได้เปิดตัวโปรเจกต์โอเพนซอร์สที่น่าสนใจในชื่อ "Jacquard" ซึ่งเป็นภาษาโปรแกรมมิ่งขนาดเล็กที่ออกแบบมาสำหรับโลกยุคใหม่โดยเฉพาะ นั่นคือสถานการณ์ที่โค้ดส่วนใหญ่ถูกสร้างโดย AI และมีมนุษย์ทำหน้าที่ตรวจสอบความถูกต้องเป็นหลัก ชื่อของภาษานี้ได้รับแรงบันดาลใจจากเครื่องทอผ้า Jacquard (Jacquard machine) ซึ่งเป็นหนึ่งในเครื่องจักรรุ่นบุกเบิกที่ทำงานด้วยโปรแกรมผ่านบัตรเจาะรู และถือเป็นต้นแบบของคอมพิวเตอร์ในยุคต่อมา
สิ่งที่ทำให้ Jacquard แตกต่างคือกระบวนการออกแบบ ผู้สร้างได้ทดลองให้ AI วิเคราะห์โครงสร้างเชิงลึก หรือ ASTs (Abstract Syntax Trees - โครงสร้างต้นไม้ที่แสดงไวยากรณ์ของโค้ด) ของภาษาโปรแกรมมิ่งยอดนิยมหลายภาษา เพื่อให้ AI สังเคราะห์โครงสร้างและไวยากรณ์ใหม่ที่ตัวมันเองน่าจะเข้าใจและสร้างได้ง่ายที่สุด ผลลัพธ์ที่ได้คือภาษาที่มีแนวคิดน่าสนใจหลายอย่างรวมกัน
จุดเด่นสำคัญของ Jacquard คือระบบความปลอดภัยและการจัดการผลกระทบภายนอก (external/world effects) โดยการกระทำใดๆ ที่จะยุ่งกับระบบภายนอก เช่น การเข้าถึงไฟล์ในเครื่อง (filesystem) หรือการเชื่อมต่อเครือข่าย (network) จะต้องถูกระบุไว้อย่างชัดเจนในลายเซ็นของฟังก์ชัน (function signatures) และตัวโปรแกรมจะไม่สามารถทำงานส่วนนั้นได้เลยหากไม่ได้รับการอนุญาตอย่างชัดแจ้งตอนสั่งรัน ซึ่งช่วยลดความเสี่ยงที่โค้ดซึ่ง AI สร้างขึ้นจะกระทำการนอกเหนือความคาดหมาย
นอกจากนี้ Jacquard ยังมีระบบระบุตัวตนของโค้ดตามเนื้อหา (content-addressed identity) ซึ่งหมายความว่าภาษาจะจดจำ "ความหมาย" ของโค้ด ไม่ใช่แค่ตัวอักษร ทำให้การปรับเปลี่ยนรูปแบบการจัดวางโค้ด การเพิ่มคอมเมนต์ หรือแม้แต่การเปลี่ยนชื่อตัวแปร จะไม่ส่งผลให้ต้องคอมไพล์หรือทดสอบโค้ดใหม่ทั้งหมด ซึ่งช่วยเพิ่มประสิทธิภาพในกระบวนการพัฒนาและตรวจสอบ อย่างไรก็ตาม ผู้สร้างย้ำว่า Jacquard ในปัจจุบันยังอยู่ในสถานะต้นแบบเพื่อการวิจัย (research prototype) และยังไม่พร้อมสำหรับการใช้งานจริงในระดับ production
Jacquard สะท้อนแนวคิดการสร้างเครื่องมือยุคใหม่ที่ไม่ได้ออกแบบมาสำหรับมนุษย์เป็นหลัก แต่เพื่อทำงานร่วมกับ AI โดยตรง โดยเน้นความปลอดภัยและการตรวจสอบ ซึ่งอาจเป็นแนวทางสำคัญสำหรับอนาคตของการพัฒนาซอฟต์แวร์