- Proyek Zig mengusulkan penghapusan library LLVM, Clang, dan LLD.
- Zig berencana memiliki pass optimisasi sendiri serta menarik proyek riset dan kontribusi dari produsen chip.
- Penghapusan kemampuan kompilasi C++, Objective-C, dan Objective-C++ dari Zig.
- Kode mesin yang dihasilkan Zig mungkin akan kurang kompetitif dalam waktu dekat, tetapi dalam jangka panjang dapat menyamai atau melampaui LLVM dan GCC.
- Manfaat penghapusan LLVM mencakup kepemilikan bug, build dan bootstrapping yang lebih mudah, kecepatan kompilasi yang lebih tinggi, serta kemampuan mengimplementasikan pass optimisasi kustom.
- Muncul kekhawatiran tentang dampaknya pada proyek yang bergantung pada kompilasi C++ dan penurunan tingkat adopsi Zig.
- Menghapus ketergantungan pada DirectXShaderCompiler dan kompiler shader Metal milik Apple mungkin akan sulit.
- Dalam jangka panjang, didorong peralihan ke solusi Zig murni.
- Beberapa pengguna khawatir tentang dampaknya terhadap pengalaman pengembangan game serta penggunaan library dan alat C++ yang sudah ada.
- Kesederhanaan dan kemampuan lintas platform Zig mendapat pujian.
- Ada usulan untuk tetap mempertahankan backend LLVM sebagai opsi default, atau mempertahankan dukungan keluarga C sambil menghapus penurunan ke LLVM IR.
- Pengguna menekankan pentingnya kemampuan Zig untuk mengompilasi kode C/C++ dengan mulus dan menghasilkan biner berperforma baik.
- Dibahas potensi hilangnya library yang ada dan perlunya alternatif untuk kompilasi JIT.
- Usulan ini dipandang sebagai dampak yang sepenuhnya negatif bagi pengguna dan berpotensi sebagai umpan.
- Ditekankan pentingnya mempertahankan kemampuan Zig untuk cross-compilation dan integrasi library yang sudah ada.
- Ada usulan untuk menghapus ketergantungan pada LLVM dan LLD sambil mempertahankan clang sebagai ketergantungan opsional.
- Muncul kekhawatiran tentang dampaknya terhadap performa dan kelayakan pengganti LLVM.
- Ditekankan pentingnya dukungan kompilasi C++ untuk pengembangan game dan proyek lainnya.
- Disebutkan kemungkinan Zig dapat menggantikan fungsi LLVM seiring waktu.
- Dibahas kebutuhan akan jaminan performa yang masuk akal dan potensi hilangnya peluang optimisasi.
- Disebutkan dampaknya terhadap library dan alat tertentu seperti ImGui dan Tracy.
- Usulan menghapus LLVM dari toolchain Zig dapat menyebabkan perpecahan di komunitas Zig.
- Beberapa pengguna mungkin akan memakai versi Zig yang lebih lama untuk menghindari migrasi.
- Mempertahankan LLVM memiliki tantangan dan keterbatasan.
- Sistem plugin untuk kompiler Zig dapat menjadi solusi jangka panjang.
- Kompilasi program Zig ke platform dan bahasa lain masih dapat terus didukung.
- Zig cc, fitur khas Zig, dapat terus berkembang sebagai proyek tersendiri.
- Belum ada keputusan final atas usulan ini.
- Diskusi tentang penghapusan LLVM menyebar di media sosial.
- Zig cc sangat dihargai komunitas dan menawarkan keunggulan dibanding toolchain lain.
- Mempertahankan Zig cc tanpa Clang dimungkinkan.
- Proyek terpisah yang membundel Clang dapat mendukung use case yang ada untuk membangun kode C++ dengan Zig.
- Pemisahan alat secara terpisah atau merekrut maintainer untuk mempertahankan Zig cc dianggap sebagai solusi potensial.
- Dapat dikembangkan alat migrasi untuk codebase yang bergantung pada fitur yang dihapus.
- Seorang software engineer baru-baru ini memindahkan proyek ke versi GHC terbaru yang memakai native code generator untuk memberikan kecepatan kompilasi lebih tinggi.
- Proyek Silk.NET menggunakan zig cc dan zig c++ untuk menyediakan lingkungan build yang reproducible bagi native library, sehingga memungkinkan cross-compilation yang mudah dan setup lokal.
- Seorang software engineer menggunakan zig cc dan zig c++ dalam proyek pribadi untuk memungkinkan cross-compilation library yang mudah dan satu konfigurasi build.zig.
- Kompiler Intel C/C++ telah menyelesaikan adopsi LLVM, menawarkan waktu kompilasi lebih cepat, optimisasi lebih baik, dan dukungan offloading GPU serta FPGA.
- Usulan memindahkan bagian llvm Zig ke proyek terpisah yang dikelola komunitas mendapat tanggapan beragam.
- Sebagian pengguna menyatakan kekhawatiran atas penghapusan dukungan C++ di Zig, sementara yang lain berpendapat dukungan tersebut mahal dan tidak tercakup dalam anggaran.
- Tim Zig menyarankan bahwa orang-orang yang menganggap dukungan C++ penting sebaiknya mempertimbangkan untuk berkontribusi secara finansial atau waktu guna mendukung fitur tersebut.
- Beberapa pengguna berpendapat penghapusan LLVM mungkin membawa manfaat jangka panjang, tetapi menyatakan kekhawatiran terhadap penghapusan total dukungan C++ dan Obj-C(++).
- Ada usulan untuk mengecilkan kompiler Zig menjadi biner yang lebih kecil dan ringan, lalu menambahkan fitur LLVM sebagai ekstensi.
2 komentar
Apakah optimisasi dan dukungan platformnya bisa setara dengan LLVM..
Opini Hacker News