1 คะแนน โดย GN⁺ 2023-12-19 | 1 ความคิดเห็น | แชร์ทาง WhatsApp

โปรเจกต์ Wasm3 เปลี่ยนสู่สถานะบำรุงรักษา

  • โปรเจกต์ Wasm3 ได้เข้าสู่ระยะบำรุงรักษาขั้นต่ำ เนื่องจากบ้านของนักพัฒนาถูกทำลายโดยชาวรัสเซียผู้รุกราน จึงไม่สามารถพัฒนาฟีเจอร์ใหม่ต่อไปได้
  • ผู้พัฒนาสัญญาว่าจะตรวจสอบและรวม pull request อย่างจริงจังเพื่อช่วยให้โปรเจกต์เดินหน้าต่อไป
  • การมีส่วนร่วมต่อ Wasm3 จึงสำคัญกว่าที่เคย

เริ่มต้นใช้งาน Wasm3

  • ดำเนินการติดตั้งตามคู่มือการติดตั้ง Wasm3
  • Wasm3 สามารถใช้เป็นไลบรารีสำหรับภาษาและแพลตฟอร์มหลากหลาย เช่น Python3, Rust, C/C++, GoLang เป็นต้น

สถานะของ Wasm3

  • Wasm3 ผ่าน WebAssembly spec test suite และสามารถรันแอป WASI ได้จำนวนมาก
  • ความต้องการขั้นต่ำที่ยังใช้งานได้คือโค้ดประมาณ 64Kb และ RAM ประมาณ 10Kb
  • สามารถทำงานได้บนสถาปัตยกรรมหลายแบบ (x86, ARM, RISC-V ฯลฯ) และแพลตฟอร์มต่าง ๆ (Linux, Windows, OS X, Android, iOS ฯลฯ)

ความสามารถของ Wasm3

  • รองรับข้อเสนอแกนหลักของ WebAssembly และฟีเจอร์เพิ่มเติม เช่น import/export ของ mutable global, structured execution tracing และการรองรับระบบ big-endian
  • ยังมีฟีเจอร์ที่ไม่รองรับอยู่ เช่น multi-memory, reference types และ tail-call optimization

แรงจูงใจของ Wasm3

  • เหตุผลในการเลือกใช้ "interpreter ที่ช้า" แทน "JIT ที่เร็ว" มีได้หลายแบบ ในกรณีที่ความเร็วไม่ใช่ประเด็นหลัก ก็สามารถปรับปรุงขนาดไฟล์รันไทม์ การใช้หน่วยความจำ และเวลาเริ่มต้นได้
  • การบรรลุและคงไว้ซึ่งความพกพาและความปลอดภัยทำได้ง่ายกว่ามาก
  • ไลบรารีที่เรียบง่ายอย่าง Wasm3 คอมไพล์และผนวกรวมเข้ากับโปรเจกต์เดิมได้ง่าย
  • บางแพลตฟอร์ม (เช่น iOS และ WebAssembly เอง) ไม่สามารถสร้าง executable code page ได้ระหว่างรันไทม์ จึงไม่สามารถใช้ JIT ได้

การประยุกต์ใช้งานของ Wasm3

  • Wasm3 เริ่มต้นจากการเป็นโปรเจกต์วิจัย และการประเมินเอนจินในสภาพแวดล้อมหลากหลายก็เป็นส่วนหนึ่งของงานวิจัย
  • เช่นเดียวกับที่ Lua, JS, Python เป็นต้น สามารถรันบน MCU ได้ WebAssembly ก็เป็นทางเลือกที่มีอนาคตเช่นกัน
  • มีกรณีใช้งานจริง เช่น edge computing, scripting, ระบบปลั๊กอิน, การรันกฎสำหรับ IoT และ smart contract

ความเห็นของ GN⁺

  • โปรเจกต์ Wasm3 ยังคงได้รับการดูแลผ่านการมีส่วนร่วมของชุมชน แม้นักพัฒนาจะเผชิญความยากลำบากส่วนตัว ซึ่งแสดงให้เห็นถึงความยืดหยุ่นของโครงการโอเพนซอร์สและความสำคัญของความร่วมมือ
  • Wasm3 เป็น interpreter ที่มีความอเนกประสงค์ สามารถรัน WebAssembly ได้บนแพลตฟอร์มและสถาปัตยกรรมหลากหลาย และมีบทบาทสำคัญในการสำรวจความเป็นไปได้ของ WebAssembly บนระบบฝังตัว
  • การมุ่งเน้นด้านความพกพาและความปลอดภัยของโปรเจกต์ บ่งชี้ว่า WebAssembly สามารถเป็นเครื่องมือที่มีประโยชน์ได้แม้ในสภาพแวดล้อมที่มีข้อจำกัด เช่น ระบบฝังตัว

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

 
GN⁺ 2023-12-19
ความคิดเห็นจาก Hacker News
  • การมีส่วนร่วมของผู้เขียนต้นฉบับ (OP)

    • แจ้งว่าผู้เขียนต้นฉบับพร้อมที่จะตอบคำถาม
    • แชร์ลิงก์ Twitter ที่ให้บริบทเพิ่มเติมเกี่ยวกับ Wasm3
  • ความชื่นชอบและความกังวลเกี่ยวกับ Wasm3

    • Wasm3 เคยโดดเด่นกว่าตัวแปลภาษา Wasm แบบ interpreter อื่น ๆ ในด้านประสิทธิภาพ โดยช้ากว่าเนทีฟโค้ด 3-5 เท่า และเร็วกว่า Wasm interpreter ทั่วไปราว 3 เท่า
    • หวังว่า Volodymyr จะสามารถผ่านพ้นสถานการณ์ที่ยากลำบากจากการที่รัสเซียรุกรานยูเครนไปได้
  • คำอธิบายสถานการณ์ปัจจุบันของโปรเจ็กต์ Wasm3

    • Volodymyr แจ้งชุมชนว่าบ้านของเขาถูกทำลาย ทำให้เขาสามารถดูแลโปรเจ็กต์ Wasm3 ได้เพียงในระดับขั้นต่ำ
    • แม้จะไม่สามารถพัฒนาฟีเจอร์ใหม่ได้ แต่เขาสัญญาว่าจะพยายามรักษาโปรเจ็กต์เอาไว้ และจะตรวจทานและรวม Pull Request อย่างจริงจัง
    • เขาขอบคุณสำหรับความเข้าใจและการสนับสนุนในช่วงเวลาที่ยากลำบากนี้ และเน้นย้ำว่าการมีส่วนร่วมกับ Wasm3 สำคัญกว่าที่เคย
    • ลิงก์ทวีตจากเดือนกันยายน 2022 แสดงวิดีโอบ้านที่ถูกทำลาย และขอรับเงินบริจาคจากผู้ที่ต้องการช่วยเหลือ
  • ความคิดเห็นถูกลบ

    • ระบุว่ามีความคิดเห็นบางส่วนถูกลบไปแล้ว