By lew Founder on Tag: Claude, Compiler, Rust, Artificial Intelligence
Claude

Nicholas Carlini นักวิจัยจาก Anthropic สาธิตการทำงานของ Claude Opus 4.6 ที่เพิ่งเปิดตัวขึ้นมา โดยสร้างคอมไพเลอร์ภาษา C ด้วย Rust ขึ้นมาใหม่ อาศัย Claude Code รวม 16 ตัวช่วยกันเขียนโค้ดกว่าแสนบรรทัด คิดเป็นค่าใช้ Claude ทั้งหมด 20,000 ดอลลาร์ โดยสามารถคอมไพล์ Linux 6.9 ได้สำเร็จบนซีพียู x86, Arm, และ RISC-V

By mk Founder on Tag: TypeScript, Compiler, Microsoft, Programming, Go
TypeScript

ไมโครซอฟท์เปิดทดสอบ TypeScript Native คอมไพเลอร์ตัวใหม่ที่เขียนด้วย Go แบบ public preview

เมื่อเดือนมีนาคมที่ผ่านมา ไมโครซอฟท์เปิดตัวคอมไพเลอร์ตัวใหม่ของ TypeScript ที่เปลี่ยนมาเขียนด้วยภาษา Go (โค้ดเนม Corsa) ที่จะมาแทนคอมไพเลอร์ตัวเดิมที่เขียนด้วย TypeScript/JavaScript (โค้ดเนม Strada) ด้วยเหตุผลเรื่องประสิทธิภาพที่ดีขึ้น 10 เท่า

By mk Founder on Tag: Rust, GCC, Compiler, Programming, Open Source
Rust

โครงการ GNU Compiler Collection หรือ GCC เปิดตัวคอมไพเลอร์ภาษา Rust (gccrs) เป็นอีกทางเลือกหนึ่งนอกเหนือจากคอมไพเลอร์หลักของโครงการ Rust โดยตรง (rustc)

แนวทางของ GCC ต้องการเป็นชุดคอมไพเลอร์สำหรับภาษาโปรแกรมแบบครบวงจร และสร้างคอมไพเลอร์สำหรับภาษาต่างๆ ในชุดอยู่แล้ว (เช่น gccgo) กรณีของ gccrs ถูกพัฒนาขึ้นมาตั้งแต่ปี 2014 ก่อน Rust ออกเวอร์ชัน 1.0 ด้วยซ้ำ แต่ถูกทอดทิ้งไประยะหนึ่ง ก่อนมีนักพัฒนารายอื่นมารับช่วงโครงการต่อในปี 2019 แล้วพัฒนาต่อเรื่อยมา

By mk Founder on Tag: Ubuntu, Linux, GCC, Compiler
Ubuntu

Ubuntu เตรียมทดลองคอมไพล์แพ็กเกจในดิสโทร ด้วยการรีดประสิทธิภาพแบบ O3 optimization ของคอมไพเลอร์ GCC ซึ่งจะทำให้แอพรันได้เร็วขึ้นกว่า O2 optimization ที่ใช้อยู่ในปัจจุบัน

O3 optimization เป็นตัวเลือกของ GCC ที่มีอยู่แล้ว ข้อดีคือไบนารีที่คอมไพล์จะมีประสิทธิภาพตอนรันมากขึ้น แต่ต้องแลกมาด้วยระยะเวลาการคอมไพล์ที่นานกว่าเดิม และขนาดของไบนารีที่อาจใหญ่ขึ้น

By lew Founder on Tag: GCC, Compiler, Rust
GCC

GCC โครงการคอมไพลเลอร์ของ GNU ประกาศรับโค้ดรองรับภาษา Rust เข้าโครงการ หลังจาก Philip Herron นักพัฒนาจาก Embecosm พัฒนาโครงการนี้มาตั้งแต่ปลายปี 2020

โครงการคอมไพลเลอร์ขนาดใหญ่อย่าง GCC หรือ LLVM จะแบ่งฟีเจอร์ด้านการรองรับภาษา (front-end) ออกจากการรองรับสถาปัตยกรรมซีพียู (back-end) ทุกวันนี้คอมไพลเลอร์ rustc ที่เป็นคอมไพลเลอร์หลักของภาษา Rust นั้นใช้ LLVM ขณะที่ GCC รองรับสถาปัตยกรรมซีพียูกว้างขวางกว่า

By lew Founder on Tag: Artificial Intelligence, Google, Compiler
Artificial Intelligence

กูเกิลนำเสนอปัญญาประดิษฐ์ MLGO นำมาช่วยคอมไพลเลอร์ให้ออปติไมซ์โค้ดได้ดีขึ้นกว่าเดิม ทั้งในแง่ประสิทธิภาพการทำงาน และขนาดโค้ดที่ได้หลังจากคอมไพล์แล้ว

By lew Founder on Tag: Intel, Compiler, LLVM, Open Source
Intel

อินเทลมีสินค้าชิ้นสำคัญในสายซอฟต์แวร์คือ Intel C++ Compiler ที่รีดประสิทธิภาพซีพียูได้ดีกว่าคอมไพล์เลอร์โอเพนซอร์สทั่วไป แต่ปีนี้อินเทลก็เตรียมย้ายเอนจินภายในของคอมไพล์เลอร์นี้ไปใช้ LLVM แทนแล้ว

LLVM เป็นโครงการที่มีโครงการย่อยๆ อยู่จำนวนมาก เช่น คอมไพล์เลอร์ภาษา C++ นั้นมีโครงการ Clang เป็นตัวคอมไพล์ภาษา (frontend) อยู่ โดยอินเทลจะพัฒนาให้ LLVM สามารถออปติไมซ์โค้ดได้ดีขึ้น โดยโค้ดส่วนหนึ่งจะส่งกลับเข้าโครงการ LLVM แต่บางส่วนจะเก็บไว้กับคอมไพล์เลอร์ Intel oneAPI เท่านั้น

By lew Founder on Tag: Huawei, Compiler
Huawei

หลังจากสหรัฐฯ แบนไม่ให้หัวเว่ยใช้เทคโนโลยีสหรัฐฯ ทางหัวเว่ยก็พยายามแสดงความพร้อมที่จะใช้เทคโนโลยีของตัวเองตลอดมา โดยระบบปฎิบัติการ HarmonyOS นั้นมีหัวใจสำคัญคือ Ark Compiler ที่จะมาทดแทนจาวาคอมไพล์เลอร์ในแอนดรอยด์ แต่นักพัฒนาจีนที่ทดลองใช้งานก็พบว่ามันยังไม่สามารถใช้งานได้จริง

Max Zhou อดีตหัวหน้าฝ่ายวิศวกรรมของ Mobike ที่ออกมาตั้งบริษัท MetaApp ระบุว่า Ark Compiler เป็นแค่การประชาสัมพันธ์

By lew Founder on Tag: Chrome, Compiler, Visual Studio
Chrome

Chrome 64 เปลี่ยนคอมไพล์เลอร์จาก Microsoft Visual C++ (MSVC) มาเป็น Clang ให้เหมือนกับแพลตฟอร์มอื่นๆ ได้แก่ macOS, iOS, Linux, Chrome OS, Android, และ Windows

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

By mk Founder on Tag: Firefox, JavaScript, Compiler, WebAssembly, Browser, Mozilla
Firefox

เราทราบกันดีว่า Firefox 57 เร็วขึ้นกว่าเดิมมาก แต่นั่นเป็นเพียงจุดเริ่มต้นเท่านั้น เพราะ Mozilla มีแผนปรับปรุงเอนจินอีกมาก และใน Firefox 58 ก็มีของใหม่ที่ช่วยให้การประมวลผล JavaScript เร็วขึ้นอีก

ที่ผ่านมา Firefox รองรับ WebAssembly หรือการคอมไฟล์ JavaScript เป็นไบนารีเพื่อให้ได้ประสิทธิภาพดีขึ้นกว่าเดิม ใน Firefox 58 จะปรับปรุงการคอมไพล์ WebAssembly โดยใช้เทคนิค 2 อย่างประกอบกัน

By mk Founder on Tag: Avast, Security, Compiler, Open Source
Avast

Avast เปิดซอร์สโค้ดของ RetDec (Retargetable Decompiler) ดีคอมไพเลอร์ที่ช่วยแปลงไบนารีกลับเป็นซอร์สโค้ด

RetDec ถูกใช้งานภายในบริษัท Avast เพื่อใช้วิเคราะห์ไวรัส-มัลแวร์ที่มาในรูปของไบนารี สำหรับดูพฤติกรรมการทำงานของมัน รวมถึงหาวิธีแก้ไข (ในกรณีเป็น ransomware)

RetDec พัฒนาขึ้นจากโครงการคอมไพเลอร์โอเพนซอร์ส LLVM และเมื่อมันถูกเปิดซอร์สกลับมาอีกครั้ง (ใช้สัญญาอนุญาต MIT) ก็ช่วยให้เรามีดีคอมไพเลอร์ที่มีคุณภาพระดับใช้งานจริงเพิ่มอีกหนึ่งตัว

By lew Founder on Tag: NetBSD, Compiler, Security
NetBSD

เป้าหมายสำคัญอย่างหนึ่งในการรักษาความปลอดภัยซอฟต์แวร์โอเพนซอร์ส คือการทำให้การคอมไพล์สามารถทำซ้ำได้ (reproducible builds) เพื่อให้คนภายนอกแน่ใจได้ว่าซอร์สโค้ดที่เปิดเผยออกมาตรงกับซอฟต์แวร์ที่กำลังใช้งานอยู่ แต่กระบวนการทำจริงนั้นมีเงื่อนไขหลายอย่างที่ทำให้โค้ดไม่สามารถคอมไพล์ออกมาให้ตรงกันทุกครั้ง แต่วันนี้ทาง NetBSD ก็ออกมาระบุว่าตอนนี้การคอมไพล์บนสถาปัตยกรรม amd64 และ sparc64 สามารถทำซ้ำได้แล้ว

ทาง NetBSD แจงรายการปัญหาที่พบจากการพยายามทำให้การคอมไพล์ทำซ้ำได้ ได้แก่

By mk Founder on Tag: Nougat, Android, Compiler
Nougat

ฟีเจอร์ใหม่ของ Android 7.0 ที่ลึกลงไปในระดับของการคอมไพล์คือการนำเทคนิค Just in Time (JIT) compiler มาใช้กับรันไทม์แบบ ART ที่เริ่มใช้มาตั้งแต่ Android 5.0

By wiennat Writer on Tag: C++, Compiler, LLVM, Microsoft, Visual Studio
C++

โครงการนำ Clang มาใช้คอมไพล์โค้ดภาษา C++ ของไมโครซอฟท์ มีความก้าวหน้าอย่างจับต้องได้อีกขั้นเมื่อไมโครซอฟท์ได้นำเสนอวิธีการคอมไพล์โค้ดวินโดวส์แอพด้วย Clang ในงาน CPPCon 2015 ที่ผ่านมา และคาดว่าจะเพิ่มวิธีการคอมไพล์นี้ในชุดอัพเดตสำหรับ Visual C++ ที่จะออกมาในเดือนหน้าด้วย

By mk Founder on Tag: Compiler, LLVM, Microsoft, Visual Studio
Compiler

โครงการชุดคอมไพเลอร์โอเพนซอร์ส LLVM มีคอมไพเลอร์ภาษา C/C++/Objective-C ชื่อว่า Clang ที่ถูกใช้งานอย่างแพร่หลาย ปกติแล้ว Clang ทำงานบนระบบปฏิบัติการสายยูนิกซ์ แต่ก็สามารถใช้บนวินโดวส์ได้ด้วย

ล่าสุด Clang ได้ผู้สนับสนุนรายใหม่คือ "ไมโครซอฟท์" ที่ปกติแล้วใช้ Visual C++ ของตัวเองเสมอมา (Clang เริ่มพัฒนาโดยแอปเปิล แต่ปัจจุบันดูแลโดยชุมชน)

By wiennat Writer on Tag: Development, Compiler, Microsoft, .NET
Development

ต่อเนื่องจากแผนการโอเพนซอร์ส.NET Framework และรองรับการทำงานบนลินุกซ์และโอเอสเท็น ล่าสุดไมโครซอฟท์เปิดตัวโครงการพัฒนาคอมไพเลอร์ชื่อว่า LLILC (อ่านว่า lilac) ซึ่งเป็นคอมไพเลอร์แบบ Just in Time (JIT) สำหรับ CoreCLR เพื่อใช้งานร่วมกับ LLVM ข้อดีของ LLVM อ่านได้ในข่าวเก่า

By lew Founder on Tag: Programming, Go, Compiler
Programming

คอมไพล์เลอร์ภาษา Go ก่อนหน้านี้พัฒนาด้วยภาษาซีมาโดยตลอด แต่เมื่อคืนที่ผ่านมา Russ Cox ทีมงานภาษา Go ก็ลบโค้ดเหล่านี้ออกจาก Git ใน master branch แล้ว

การที่ Go สามารถคอมไพล์ตัวเองได้ ทำให้ Go กลายเป็นภาษาในกลุ่ม self-hosting อีกหนึ่งตัว

ตอนนี้คอมไพล์เลอร์ที่เขียนด้วยภาษา Go ยังช้ากว่าที่เขียนด้วยซีอยู่เล็กน้อย แต่ Cox ระบุว่าน่าจะแก้ปัญหาได้ภายในสัปดาห์หน้า

By tgst Contributor on Tag: Java, Programming, Compiler, C#, C, Objective-C, Microsoft
Java

หลังจากที่กูเกิลออกเครื่องมือแปลงโค้ด Java เป็น Objective-C ในชื่อ J2ObjC ผ่านมาเกือบ 3 ปีก็ได้เวลาของไมโครซอฟท์กันบ้าง

ไมโครซอฟท์ออกเครื่องมือแปลงโค้ด จาก Java เป็น C#, C++ และ Objective C++ (โดยในส่วนของ C++ และ Objective C++ จะมีการรองรับในเร็วๆ นี้) ในชื่อ JUniversal มาพร้อมกับไลบรารี JSimple และสามารถใช้ร่วมกันกับ J2ObjC ในการแปลงเป็น Objective-C ได้

By mk Founder on Tag: Apple, Safari, JavaScript, WebKit, Compiler
Apple

ช่วงหลายปีที่ผ่านมานี้ เราเห็นโครงการพัฒนาด้านประสิทธิภาพการประมวลผล JavaScript ของเบราว์เซอร์ค่ายต่างๆ โดยโครงการที่โดดเด่นคือ asm.js ที่ริเริ่มจากฝั่ง Mozilla

ฝั่งของแอปเปิลที่สร้าง Safari อยู่บนโครงการ WebKit ก็มีความเคลื่อนไหวในเรื่องนี้เช่นกัน โดยใช้ชื่อโครงการว่า FTLJIT ย่อมาจาก (Fourth Tier LLVM JIT)

By nuntawat Writer on Tag: Compiler, Developer, Metro, Microsoft, .NET
Compiler

ไมโครซอฟท์ปล่อยรุ่นพรีวิวของ .NET Native (ชื่อเดิม Project N) เทคโนโลยีด้านคอมไพเลอร์ตัวใหม่สำหรับแพลตฟอร์ม .NET แล้ว บริษัทเคลมว่า .NET Native จะช่วยให้แอพแบบ Metro (Windows Store apps) เริ่มต้นทำงานเร็วขึ้นร้อยละ 60 และใช้หน่วยความจำน้อยลงกว่าเดิมร้อยละ 15-20

หลักการทำงานคือ .NET Native จะคอมไพล์โค้ดภาษา C# เป็นโค้ดแบบ native ที่ทำงานคล้าย C++ ซึ่งทำให้ได้ประสิทธิภาพระดับภาษา C++ จากการเขียนโค้ดภาษา C#

บริษัทยังกล่าวว่าได้ใช้ .NET Native คอมไพล์แอพของตัวเองบ้างแล้ว อาทิ Wordament และ Fresh Paint

Subscribe to Compiler