needhelp
← Back to blog

Bun Tulis Ulang 960K Baris dari Zig ke Rust dalam 6 Hari — AI yang Lakukan Bagian Berat

by needhelp
bun
rust
zig
ai-codegen
javascript-runtime

Tulis ulang Bun Zig ke Rust

Pada 14 Mei 2026, kreator Bun Jarred Sumner menggabungkan PR #30412 — cabang 6755 commit yang menulis ulang inti Bun dari Zig ke Rust. Cabang claude/phase-a-p... hampir seluruhnya dihasilkan oleh agen AI Anthropic’s Claude.

Angkanya mencengangkan:

Metrik Nilai
Commit 6.755
Kode diterjemahkan ~960K baris Zig → Rust
Waktu 6 hari
Kompatibilitas tes 99.8% (Linux x64 glibc)
Cabang sumber claude/phase-a-p...

Apa yang Sebenarnya Terjadi

Bun awalnya ditulis dalam Zig, bahasa pemrograman sistem yang dirancang oleh Andrew Kelley. Zig memberi Bun kecepatannya — tapi juga membatasi kumpulan kontributor. Rust, sebaliknya, memiliki ekosistem besar, tooling matang, dan integrasi LLVM yang dalam.

Setelah akuisisi Bun oleh Anthropic, tim bereksperimen menggunakan agen Claude untuk menerjemahkan seluruh codebase Zig ke Rust. Eksperimen berjalan selama 6 hari di cluster node memori tinggi, menghasilkan 6755 commit.

Hasilnya: codebase Rust yang lolos 99.8% dari suite tes Bun yang ada di Linux x64 glibc.

Migrasi Berbasis AI di Skala Besar

Ini adalah salah satu demonstrasi skala besar pertama migrasi codebase berbasis AI. Pendekatannya:

  1. Analisis sumber: Claude menganalisis pola kode Zig, idiom manajemen memori, dan permukaan API publik
  2. Terjemahan inkremental: Setiap file Zig diterjemahkan ke Rust secara inkremental, mempertahankan perilaku melalui pengujian berbasis properti
  3. Eksekusi paralel: Banyak instance agen Claude bekerja paralel di seluruh codebase
  4. Validasi CI: Setiap modul yang diterjemahkan divalidasi terhadap suite tes Bun yang ada

Kontroversi

Gabungan ini telah memicu perdebatan intens di komunitas developer:

Komunitas Zig

Bun adalah proyek flagship Zig — deployment produksi terbesar dan paling terlihat dari bahasa tersebut. Loris Cro, anggota Zig Software Foundation, sebelumnya menggambarkan kontribusi LLM ke Zig sebagai “sebagian besar negatif.” Migrasi ini dipandang oleh sebagian sebagai pengkhianatan terhadap bahasa yang memungkinkan Bun ada.

Kritik “Vibe Porting”

Di Lobste.rs, developer menciptakan istilah “vibe porting” — terjemahan berbasis AI yang bekerja secara statistik tapi kurang pemahaman mendalam. Kritikus berpendapat bahwa kode Rust yang dihasilkan AI mengikuti pola superfisial dan melewatkan cara Rust idiomatis.

Sikap Hati-hati Jarred

Dalam komentar HN sebelumnya, Sumner menekankan: “Kami belum berkomitmen untuk menulis ulang. Ada kemungkinan sangat tinggi semua kode ini dibuang sepenuhnya.” Namun penggabungan ke main menunjukkan bahwa eksperimen melampaui ekspektasi — atau bahwa strateginya bergeser.

Arti Ini

Bagi Pengguna Bun

Jangka pendek: tidak ada yang berubah. Port Rust mempertahankan kompatibilitas API. Jangka panjang: kumpulan kontributor yang lebih besar, integrasi lebih baik dengan ekosistem Rust (crates seperti tokio, hyper, reqwest), dan potensi iterasi lebih cepat.

Bagi Zig

Zig kehilangan proyek flagship-nya. Tapi bahasa ini terus berevolusi — dan port Bun mungkin menarik developer yang ingin bekerja di runtime berbasis Rust.

Bagi Migrasi Kode AI

Ini momen penting. Jika runtime tingkat sistem 960K baris bisa di-port dalam 6 hari oleh AI, ekonomi penulisan ulang perangkat lunak berubah secara fundamental. Pemeliharaan, migrasi warisan, dan porting bahasa — yang secara historis mahal dan berisiko — menjadi dapat dikerjakan.

Reaksi Komunitas

Sumber Sentimen
Hacker News Terbelah — terkesan dengan kemampuan AI, skeptis terhadap kualitas kode
Lobste.rs Kritis — diskusi “vibe porting”, kekhawatiran tentang Rust idiomatis
Stork.ai analysis Analisis strategis dinamika Zig vs Rust

Melihat ke Depan

Tulis ulang Bun Rust belum selesai — 99.8% bukan 100%, dan reviewer telah menandai area di mana terjemahan AI kurang. Tapi fakta bahwa eksperimen ini mencapai main sama sekali menandakan babak baru bukan hanya untuk Bun, tapi untuk cara kita berpikir tentang penulisan ulang perangkat lunak.

Seperti kata komentator di HN: “Pertanyaan lama adalah ‘haruskah kita menulis ulang di Rust?’ Pertanyaan baru adalah ‘haruskah kita biarkan AI menulis ulang di Rust untuk kita?’”

Referensi

Share this page