1 คะแนน โดย GN⁺ 2023-08-09 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • บทความนี้กล่าวถึงการสำรวจของผู้เขียนเกี่ยวกับภาษาโปรแกรม Raku
  • Raku เดิมรู้จักกันในชื่อ Perl 6 และด้วยคุณลักษณะที่แปลกเฉพาะตัวและซับซ้อน จึงถูกพรรณนาว่าเป็นภาษาที่เกรมลินอัจฉริยะออกแบบขึ้น
  • ผู้เขียนเน้นว่า Raku ใช้ตัวดำเนินการยูนิโคด เช่น ∈ สำหรับการเป็นสมาชิกของเซต และ x สำหรับการทำซ้ำสตริง
  • Raku อนุญาตให้ผู้ใช้กำหนดตัวดำเนินการ circumfix และ postcircumfix ใหม่ได้ จึงมีความยืดหยุ่นในการสร้างการดำเนินการแบบกำหนดเอง
  • ภาษานี้รองรับ multiple dispatch ทำให้ฟังก์ชันสามารถมี type signature ได้หลายแบบ และเลือกแบบที่เหมาะสมตามอินพุต
  • Raku ยังอนุญาตให้ dispatch ตาม predicate ของค่าขณะรันไทม์ได้อีกด้วย เพิ่มชั้นของความยืดหยุ่นเข้าไปอีก
  • ผู้เขียนชี้ว่า Raku มีรายการเมธอดที่โหลดไว้ล่วงหน้าบนวัตถุอย่างกว้างขวาง มากกว่าภาษาใด ๆ ที่เขาเคยพบ
  • ฟีเจอร์ Junctions ของ Raku ช่วยให้เปรียบเทียบหลายอย่างได้พร้อมกัน และตัวดำเนินการ infix ใด ๆ ก็สามารถเติม ! นำหน้าเพื่อทำให้เป็นนิเสธได้
  • แม้จะมีคุณลักษณะเฉพาะตัว ผู้เขียนก็วิจารณ์ว่า Raku มีเอกสารประกอบไม่เพียงพอและพึ่งพาสัญลักษณ์มากเกินไป ทำให้ค้นหาข้อมูลได้ยาก
  • ผู้เขียนยังกล่าวถึงปัญหาที่ REPL บน Windows ล่มเมื่อป้อนยูนิโคด และปัญหาที่คอมไพเลอร์ทำงานช้า
  • แม้จะมีปัญหาเหล่านี้ ผู้เขียนก็ยังชอบ Raku และหวังว่าจะมีการปรับปรุงด้านเวลาในการคอมไพล์และเอกสารประกอบในอนาคต

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

 
GN⁺ 2023-08-09
ความคิดเห็นจาก Hacker News
  • ภาษาโปรแกรม Raku มีคุณลักษณะที่ทั้งน่าทึ่งและชวนสนุก และครองตำแหน่งที่เป็นเอกลักษณ์บนสเปกตรัมของภาษาโปรแกรม
  • ผู้ใช้บางส่วนประสบปัญหาในการทำความเข้าใจสำนวนของ Raku เพราะมันใช้สัญลักษณ์และไวยากรณ์ที่เปลี่ยนไปตามบริบทเป็นจำนวนมาก
  • ความสามารถเฉพาะตัวของ Raku อย่างหนึ่งคือ การหารจำนวนเต็มและลิเทอรัลทศนิยมจะให้ผลลัพธ์เป็นรูปแบบจำนวนตรรกยะ ซึ่งเป็นแนวทางที่ต่างจากการใช้เลขทศนิยมลอยตัวที่พบได้ทั่วไป
  • Raku ใช้ตัวดำเนินการแบบ Unicode แต่ก็มีรูปแบบ ASCII ที่เทียบเท่ากันสำหรับตัวดำเนินการแต่ละตัวด้วย
  • เอกสารทางการของ Raku ครอบคลุมอย่างครบถ้วนทั้งแนวคิดและเอกสาร API
  • ปรัชญาการออกแบบของ Raku มีรากมาจาก Perl และเดิมเคยเป็นที่รู้จักในชื่อ "Perl 6"
  • ภาษานิพจน์ทั่วไปของ Raku ถูกออกแบบโดยยึดหลักการเป็นจุดตั้งต้น และมุ่งไปสู่ไวยากรณ์ที่สมเหตุสมผลกว่านิพจน์ทั่วไปแบบ Perl 5/PCRE
  • Raku อาจดูเป็นเครื่องมือที่ซับซ้อนและพิสดาร แต่ก็สามารถทำให้ผู้ใช้ทำงานได้มีประสิทธิผลมากขึ้น
  • ภาษานี้ใช้ sigil ($x, @x) เพื่อระบุชนิดของตัวแปร ซึ่งอาจช่วยให้อ่านโค้ดได้ง่ายขึ้น
  • อย่างไรก็ตาม ภาษานี้อาจท้าทายสำหรับผู้เริ่มต้นที่ยังไม่มีความเข้าใจด้านการเขียนโปรแกรมอย่างลึกซึ้ง หรือสำหรับผู้ที่ต้องอาศัยวิจารณญาณในการใช้งานอย่างมีประสิทธิภาพ