23 คะแนน โดย xguru 2023-03-17 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • ลองถาม GPT-4 ถึงทฤษฎีแบบบูรณาการเกี่ยวกับการพัฒนาซอฟต์แวร์ แล้วให้มันสรุปออกมาเป็น Tenet (หลักการ) 10 ข้อ พร้อมยกตัวอย่างการใช้งานจริง
  • ถ้าจะสร้างภาษาโปรแกรมจากแนวคิดนี้ ไวยากรณ์จะมีหน้าตาอย่างไร?
  • ภาษา "TenetLang" ซึ่ง GPT-4 ตั้งชื่อให้เองนี้ ผสมไวยากรณ์แบบ Python เข้ากับความสามารถของภาษาสายฟังก์ชันนัล/เชิงวัตถุ
    • การกำหนดขอบเขตด้วยการเยื้องบรรทัดคล้าย Python
    • ระบบชนิดข้อมูลที่แข็งแรงผ่าน type inference แบบ TypeScript และ Kotlin
    • first-class function และ closure คล้าย JavaScript
    • โครงสร้างข้อมูลแบบ immutable เป็นค่าเริ่มต้น และเลือกใช้ mutable ได้
    • ไวยากรณ์ lambda แบบกระชับสำหรับฟังก์ชันนิรนาม
    • pattern matching และ destructuring แบบ Haskell และ Rust
    • รองรับ concurrency ในตัวด้วย async/await และ lightweight thread
    • FFI (Foreign Function Interface) สำหรับการทำงานร่วมกับภาษาอื่น
  • ถ้าจะต่อยอดให้เหมาะกับ distributed computing ล่ะ?
    • รองรับการสื่อสารแบบ asynchronous และ non-blocking ด้วย lightweight actor แบบ Erlang และ Akka พร้อมอัลกอริทึมส่งข้อความในตัว
    • มีไลบรารีหรือเฟรมเวิร์กในตัวที่รองรับโปรโตคอล RPC ยอดนิยมอย่าง gRPC และ Apache Thrift
    • Serialization & Deserialization ผ่านฟอร์แมตอย่าง JSON, BSON, Protocol Buffers
    • รองรับโครงสร้างข้อมูลแบบกระจาย เช่น Distributed Hash Tables (DHTs) หรือฐานข้อมูลแบบกระจาย เพื่อแชร์และจัดการข้อมูลข้ามหลายโหนด
    • รองรับ fault tolerance ผ่าน supervision tree, การลองใหม่อัตโนมัติ, timeout ฯลฯ
  • เพิ่มความสามารถระดับภาษาเพื่อเชื่อมต่อ LLM อย่าง GPT-3 หรือ ChatGPT ได้ง่าย
    • ถึงขั้นถามหาวิธีเชื่อมระบบลักษณะนี้โดยตรงในระดับภาษา
    • และถามต่อถึงฟีเจอร์อื่นที่อยากเพิ่ม เช่น การเติมโค้ดอัตโนมัติใน IDE, เครื่องมือ refactoring, การแปลจากโค้ดหนึ่งไปอีกโค้ดหนึ่ง, การออกแบบด้วยการรู้จำแพตเทิร์น ฯลฯ
    • รวมถึงถามวิธีนำฟีเจอร์เหล่านี้ไปสร้างจริง
  • Tenet ทั้ง 10 ข้อ: Modularity, Abstraction, Scalability, Maintainability, Testability, Adaptability, Performance, Security, Collaboration, Continuous improvement

1 ความคิดเห็น

 
kayws426 2023-03-18

ถ้าจะให้ใช้งานได้จริง ดูเหมือนว่า AI คงต้องสร้างคอมไพเลอร์ให้ได้ด้วยนะครับ แบบนั้นจะถือเป็นเอกฐานอีกอย่างหนึ่งไหมนะ