Fabrice Bellard โปรแกรมเมอร์ฝรั่งเศสระดับตำนานที่สร้างโครงการสำคัญๆ เช่น FFmpeg, QEMU, Tiny C Compiler เปิดโครงการใหม่ MicroQuickJS (mjs) เอนจินจาวาสคริปต์ที่เน้นการประหยัดแรมถึงขั้นสุด ขนาดไบนารีต่ำกว่า 100KB และใช้แรมตอนรันจริง 10KB เท่านั้น
ก่อนหน้านี้ Bellard เคยสร้าง QuickJS (qjs) เมื่อปี 2019 ที่ผ่านมา โดยมุ่งเป้าเป็นเอนจินจาวาสคริปต์ขนาดเล็กเช่นกัน แต่ qjs นั้นยังมีขนาดไบนารีอยู่ที่ 387KB เทียบกับ V8 ใน Chrome ขนาดไบนารี 19.7MB รอบนี้ mjs เปลี่ยนตัว garbage collector เพื่อให้ทำงานในแรมน้อยๆ ได้ และไม่ใช้ stack ของ CPU พร้อมกับรองรับจาวาสคริปต์ไม่ครบทุกฟีเจอร์ เช่นรองรับ ES5 strict mode เป็นหลัก
โค้ดทั้งหมดแทบไม่ใช้ API ภายนอกเลย รวมถึง malloc() และ free() ด้วย การรันโค้ดต้องเตรียมหน่วยความจำไว้และเอนจินจะใช้งานหน่วยความจำก้อนนี้
Salvatore Sanfilippo ผู้สร้าง Redis แสดงความเห็นว่าหากมี mjs ตั้งแต่ปี 2010 เขาคงใช้เอนจินนี้ใน Redis แทน Lua เพราะคุณสมบัติใกล้เคียงกัน คือ เล็ก, เร็ว, เป็นภาษา C มาตรฐาน
ที่มา - GitHub: bellard/mquickjs, Hacker News
on
ผมก็อยากเห็นเกมใหม่ๆ…
IDCET Wed, 24/12/2025 - 11:23
ผมก็อยากเห็นเกมใหม่ๆ หรืออย่างน้อยก็โปรแกรมหลักๆ ที่เราใช้งานเป็นประจำ ออกรุ่นใช้แรมน้อย กลับไปเหมือนตอนยุค XP กับ Windows 7 ก็ดีเหมือนกัน แรมไม่ต้องเยอะก็ใช้งานได้ เดี่ยวนี้บางโปรแกรมที่เคยกินแค่หลัก MB ก็กิน Memory ไปตั้งหลาย GB แล้ว
อยากให้กลับไปช่วงยุคที่ใช้พลังงานน้อย และการ์ดจอระดับกลางไม่ใหญ่และหนักเท่าอิฐมอญ แต่รีดประสิทธิภาพได้ดีเหมือนการ์ดจอรุ่นปัจจุบัน จะเป็นอะไรที่ดีมาก
มี Zed ที่พยายามเขียน editor…
lew Wed, 24/12/2025 - 13:31
In reply to ผมก็อยากเห็นเกมใหม่ๆ… by IDCET
มี Zed ที่พยายามเขียน editor ใหม่ด้วย native + GPU นะครับ เน้น response time ต่ำๆ
อีกหน่อยน่าจะมีอะไรแนวๆ นี้อีกหลายตัว
เลิกทำทุกอย่างเป็นเว็บ…
big50000 Wed, 24/12/2025 - 14:22
In reply to ผมก็อยากเห็นเกมใหม่ๆ… by IDCET
เลิกทำทุกอย่างเป็นเว็บ หรืออย่างน้อย ๆ ก็เลิกเบสฐานเว็บแอปเป็น Chromium ก่อน ปัญหาคือ การเขียน Native UI เป็นอะไรที่ยากมาก ๆ เมื่อเทียบกับการเขียนเว็บเป็นแอป
ปล. โปรแกรมปกติที่เราเห็นทุกวันนี้หลายโปรแกรมก็ใส่หน้ากากเป็น Chromium กันหลายโปรแกรม มันเขียนง่าย ดูแลง่าย และโยนภาระทุกอย่างไปให้เว็บทำ ส่วนไหนช้าก็เขียน Native Module ใส่เข้าไป ขนาดเฟรมเวิร์กบางตัว เช่น Qt ยังเบส DOM มาแล้วเขียนที่เหลือเป็นกึ่ง ๆ Native ตัว Plasma-SystemMonitor ของ KDE ซดแรมไป 250 MB ขณะที่ WinUI Task Manager ของ Windows ใช้แค่ 100 MB
ถ้าเอาแบบหน้าตาเหมือน…
mr_tawan Wed, 24/12/2025 - 21:10
In reply to เลิกทำทุกอย่างเป็นเว็บ… by big50000
ถ้าเอาแบบหน้าตาเหมือน Windows 95 ก็ไม่ยากขนาดนั้นนะครับ 555
สุดยอด
btoy Wed, 24/12/2025 - 11:35
สุดยอด
นึกถึง Internet ยุคแรกๆ…
mbdsc28 Wed, 24/12/2025 - 11:44
นึกถึง Internet ยุคแรกๆ ความเร็วหลัก kbps
ต้องใส่ข้อมูลที่เวปให้น้อยที่สุด แต่ได้ประสิทธิ์ภาพสูงสุด
พอความเร็วเยอะเลยจะใส่อะไรก็ได้
พอถึงคราวของ Memory แพง
เลยต้องหาทางลดขนาดการใช้งาน Memory เพื่อให้ได้ประสิทธิ์ภาพสูงสุดเช่นกัน