Ladybird โครงการเบราว์เซอร์ใหม่ที่สร้างจากศูนย์ แยกจากโครงการเดิมๆ เช่น Blink หรือ WebKit ประกาศเตรียมย้ายโค้ดบางส่วนไปยังภาษา Rust หลังจากหาภาษาแบบ memory safe มาแล้วระยะหนึ่ง เดิมโครงการเคยพิจารณาภาษา Swift ด้วยแต่พบว่าการซัพพอร์ตนอกแพลตฟอร์มแอปเปิลไม่ดีนัก และก่อนหน้านี้ Firefox และ Chromium ก็ใช้ Rust อยู่ก่อนแล้ว การใช้ Rust ตามจึงเป็นตัวเลือกที่ดี
การทดลองพอร์ตส่วนแรก คือ LibJS เอนจินจาวาสคริปต์ที่มีชุดทดสอบชัดเจน คือ test262 ที่ทดสอบการทำตามมาตรฐาน ECMA-262, ECMA-402, และ ECMA-404 รวมชุดทดสอบถึง 52,898 ชุด การทำงานอาศัยการเทียบ bytecode เอาท์พุตว่าต้องตรงกับทุกไบต์ Andreas Kling นักพัฒนาโครงการอาศัยทั้ง Claude Code และ OpenAI Codex สั่งงานต่อเนื่องนับร้อยพรอมพ์ใช้เวลาสองสัปดาห์ ได้ผลออกมาเป็นโค้ด Rust ขนาด 25,000 บรรทัด ทำงานได้เหมือนโค้ด C++ ทุกประการ ทั้งชุดทดสอบ test262 และชุดทดสอบของ Ladybird เอง ในแง่ประสิทธิภาพการทำงานก็ยังเท่าโค้ดเดิม โค้ดที่ได้ยังมีลักษณะแปลงจาก C++ มาตรงๆ อยู่แต่เพียงพอใช้งาน ส่วนการปรับปรุงโค้ดให้เป็นไปตามแนวทาง Rust จะทำภายหลัง
หลังจากนี้ทีมงานจะเลือกโมดูลย่อยๆ ค่อยๆ พอร์ตไปยัง Rust โดยมีแนวทางว่ายังทำงานกับโค้ด C++ เดิมไปได้
ที่มา - Ladybird
on
อีกหน่อยคงใช้เขียน OS
VanGogh Tue, 24/02/2026 - 14:42
อีกหน่อยคงใช้เขียน OS
Redox OS
mr_tawan Tue, 24/02/2026 - 17:04
In reply to อีกหน่อยคงใช้เขียน OS by VanGogh
Redox OS
ไม่น่าจะหมายถึง Rust
aeksael Tue, 24/02/2026 - 17:28
In reply to Redox OS by mr_tawan
ไม่น่าจะหมายถึง Rust
เชียร์ Ladybird…
btoy Tue, 24/02/2026 - 16:43
เชียร์ Ladybird อยากให้เป็นทางเลือกของคนที่ต้องการ browser ที่แค่ทำงานได้ถูกต้องตามสเปคพื้นฐาน
ผมเลยต้องลองบ้างเลย 😅…
hisoft Wed, 25/02/2026 - 00:10
In reply to เชียร์ Ladybird… by btoy
ผมเลยต้องลองบ้างเลย 😅
เจอว่าเหมือนจะเข้าได้ แต่ scroll แปลกๆ (scroll ด้วย touchpad แล้วช้ามาก) แต่ scroll ด้วย trackpoint แล้วไม่บั๊คแบบสาย Chromium
แต่เจอสระลอยภาษาไทยเนี่ยหนักฮะ orz
ฮ่า…
btoy Wed, 25/02/2026 - 08:31
In reply to ผมเลยต้องลองบ้างเลย 😅… by hisoft
ฮ่า ตอนนี้ก็ใช้อะไรที่ภาษาปะกิตไปก่อน เรื่องภาษาไทยนี้ พอถึงเวลาจริงๆ ก็อาจจะต้องพึ่งพาคนเก่งแถวๆนี้ส่ง patch เข้าโครงการแน่ๆ 555
ให้ผมเดานะ …
mr_tawan Wed, 25/02/2026 - 21:51
In reply to ผมเลยต้องลองบ้างเลย 😅… by hisoft
ให้ผมเดานะ (เมื่อกี้ไปดูโค๊ดมาละ) ใช้ harfbuzz ก็จริงแต่น่าจะไม่ได้ detect script ก่อน shape ไม่มีการตัดกลุ่มคำตาม script เวลา shape บางฟอนต์ (โดยเฉพาะฟอนต์ของ ms ชุดใหม่ ๆ) วรรณยุกต์จะไม่ถูก shape ตามกฎที่วางไว้
จะว่าเป็นปัญหาของ opentype ก็ได้ คือมันวางกฎแยกกันตามแต่ละ script (language+country) ทำให้ต้องคอยมาเซ็ตก่อน shape ไม่ใช่ shape ทีเดียวทั้งชุดพร้อมกันหมดได้ (แต่ฟอนต์บางตัวก็ไม่มีปัญหา)
แต่ก็เห็นใจอยู่ บางภาษามัน detect ค่อนข้างยาก โดยเฉพาะพวกชุด CJK พวกพี่ท่านเล่นแชร์ ตัวอักษรจีนที่โค๊ดเดียวกันแต่ดันเขียนไม่เหมือนกัน มันเลยยากว่าตกลงนี่ภาษาจีนหรือญี่ปุ่นกันแน่ แล้วมันจีนไหนกันแน่ (ผมว่ามันมีวิธีแหละแต่ไม่เคยศึกษาเอง 555)
ทั้งนี้พวก graphite ไม่มีปัญหานี้เพราะมีกฎชุดเดียวใช้ทั้งภาษา แต่ฟอนต์พวกนี้ไม่ค่อยนิยม บางคนยังไม่รู้จักเลย ยังคิดว่าโลกนี้มีแค่ opentype/truetype
ตัวอักษรจีนที่โค๊ดเดียวกันแต…
big50000 Thu, 26/02/2026 - 12:42
In reply to ให้ผมเดานะ … by mr_tawan
เขียนเหมือนกันแต่ Unicode ไม่เหมือนกันหรือเปล่านะ
ปกติเวลา render glyph รู้แค่…
rattananen Thu, 26/02/2026 - 13:44
In reply to ให้ผมเดานะ … by mr_tawan
ปกติเวลา render glyph รู้แค่ unicode ตัว render กับตัวก่อนหน้าก็พอครับ
ไม่ต้องรู้ว่า language อะไร
ใน font file ปกติมันมี table สำหรับ correct position ให้ครับ kern gpos
ที่สระเห็นสระลอยส่วนใหญ่เป็นเพราะไม่ได้เอา information ตรงนี้จากใน font มาใช้ หรือไม่คนสร้าง font ไม่ได้ใส่มาครับ
ผมเคยแค่ใช้ Freetype library อ่าน font แล้วเอา data มา render แบบนั่งเทียนเอาเอง
วิธีการที่คนทั่วไปใช้จริงๆ ผมก็ไม่รู้เหมือนกัน เชื่อมากไม่ได้นะครับ
งานส่วนที่นานสุดน่าจะตรวจบัค…
PandaBaka Tue, 24/02/2026 - 19:33
งานส่วนที่นานสุดน่าจะตรวจบัคมั้งเลยใช้เวลาสองอาทิตย์ node ต่อกันแก้ 1 โผล่ 10
เอา rust browser engine…
paween_a Tue, 03/03/2026 - 14:51
เอา rust browser engine มาใช้แทน node ได้ไหมนะ ตอนนี้เอะอะอะไรก็ node จนกิน ram ระดับ GB ไปซะทุกอย่างทั้ง ๆ ที่ feature ก็พื้น ๆ เอง
ไม่ช่วย สำหรับเหตุผล …
big50000 Tue, 03/03/2026 - 15:33
In reply to เอา rust browser engine… by paween_a
ไม่ช่วย สำหรับเหตุผล /ผายมือไปที่แอป Qt6