3 คะแนน โดย GN⁺ 2023-07-19 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • Val: ภาษาโปรแกรมที่มุ่งเน้นการเขียนโปรแกรมระบบระดับสูง
  • ถูกออกแบบมาให้รวดเร็ว ปลอดภัย และเรียบง่าย
  • Val ใช้ประโยชน์จากความหมายค่าแบบเปลี่ยนแปลงได้และการเขียนโปรแกรมแบบเจเนอริก
  • คอมไพล์ล่วงหน้าเป็น machine code เพื่อหลีกเลี่ยงการจัดสรรหน่วยความจำที่ไม่จำเป็น
  • พื้นฐานของ Val ที่อิงกับความหมายค่าแบบเปลี่ยนแปลงได้ช่วยรับประกันความปลอดภัยของหน่วยความจำและความปลอดภัยของชนิดข้อมูล
  • โปรแกรมเมอร์สามารถใช้โครงสร้างที่ไม่ปลอดภัยเพื่อประสิทธิภาพได้เมื่อจำเป็น
  • Val ได้รับอิทธิพลอย่างมากจาก Swift และเน้นความหมายแบบค่า
  • Val กำลังอยู่ระหว่างการพัฒนาอย่างต่อเนื่อง และโค้ดเปิดให้ใช้งานแบบโอเพนซอร์สบน GitHub
  • ด้วยการมุ่งเน้นที่ความหมายค่าแบบเปลี่ยนแปลงได้เพื่อโค้ดที่มีประสิทธิภาพและใช้งานได้ทั่วไป Val จึงมีจุดยืนที่โดดเด่น
  • ผสานข้อจำกัดทางกายภาพของสถาปัตยกรรมคอมพิวเตอร์เข้ากับข้อดีของการเขียนโปรแกรมที่ยึดค่าเป็นศูนย์กลาง
  • Val มี language tour และข้อมูลรายละเอียดเกี่ยวกับไวยากรณ์และความหมายเชิงภาษา
  • แม้จะยังไม่พร้อมสำหรับการใช้งาน แต่สามารถร่วมพูดคุยได้ผ่านฟอรัมชุมชน
  • ตัวอย่างโค้ดของ Val แสดงให้เห็นการใช้ความหมายค่าแบบเปลี่ยนแปลงได้และการไม่มีการจัดสรรที่ไม่จำเป็น
  • subscript ของ Val สามารถมอบสิทธิ์ชั่วคราวในการอ่านหรือเขียนค่าได้
  • ชนิดข้อมูลของ Val เป็น value type ไม่ใช่ reference type
  • Val รับประกันว่าจะไม่เข้าถึงค่าของพารามิเตอร์จนกว่าฟังก์ชันจะคืนค่า
  • Val ไม่ใช้ lifetime annotation แบบเดียวกับ Rust
  • Val นำเสนอโมเดลที่เรียบง่ายกว่าโดยไม่มีการอ้างอิง

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

 
GN⁺ 2023-07-19
ความคิดเห็นจาก Hacker News
  • Val: ภาษาการเขียนโปรแกรมระบบระดับสูงที่มุ่งหมายจะเป็นผู้สืบทอดของ C++
  • คอมไพล์แบบสแตติก ใช้ระบบชนิดข้อมูลแบบสแตติก และทำงานร่วมกับ C++ ได้
  • Val ตัด pointer และ reference ออกไป และใช้ pass-by-const-reference กับ return-value-optimization ภายในแทน
  • ยังไม่ได้ออกเวอร์ชันอัลฟา และมีจำนวนดาวกับผู้มีส่วนร่วมบน GitHub จำกัด แต่ก็มีบางคนที่สนับสนุน Val
  • มีความกังวลเกี่ยวกับความสามารถของ Val ในการรองรับระบบปฏิบัติการ Windows
  • การมีอยู่ของภาษาที่มี zero-cost abstraction หลายภาษาอย่าง Rust, Zig และ Val เป็นทั้งสิ่งที่โปรแกรมเมอร์สายระบบบางคนชื่นชอบ และเป็นปัญหาที่พวกเขาหวังว่าจะมีการแก้ไข
  • Val ยังอยู่ระหว่างการพัฒนา และยังไม่ถือว่าเป็นภาษาที่พร้อมใช้งานอย่างสมบูรณ์
  • Val ได้รับความสนใจจากความเกี่ยวข้องกับ Dave Abrahams (Dave Abrahams เป็นบุคคลที่มีชื่อเสียงในชุมชนการเขียนโปรแกรม)
  • มีคำถามและการอภิปรายเกี่ยวกับการติดตั้งใช้งานของ Val รวมถึงความเป็นไปได้ในการทำ string processing และโครงสร้างข้อมูลแบบ self-referential
  • Val ดูเหมือนจะมีเป้าหมายทับซ้อนกับ Rust, Zig และ Vale แต่ไม่ใช่กับ Vala
  • ใน Val อาจมีทางออกคล้าย unsafe ของ Rust แต่ยังมีการถกเถียงกันว่าชุดย่อยที่ปลอดภัยของ Val จะเพียงพอสำหรับการใช้งานจริงหรือไม่
  • ภาษาอื่นที่คล้ายกับ Val ได้แก่ V, Vala และ Vale