HN🔥 160
💬 41

ZigのELFリンカーが爆速進化!最新の開発状況を徹底解説

kristoff_it
1日前

ディスカッション (11件)

0
kristoff_itOP🔥 160
1日前

ZigのELFリンカーに関する開発ログが公開されました。コンパイル効率とリンク速度の向上に向けた直近の改善点や、実装上の工夫について詳しくまとめられています。

1
teabee89
約24時間前

何年も前にZigについて初めて聞いた時、まさにこれこそが衝撃を受けた約束だったんだ。それが現実になるのを見られて本当に嬉しい!

2
bcardarella
約23時間前

今こうして進められている取り組みが、Bunの騒動に対する反応としてどれくらい影響しているのか気になるな。

3
bpavuk
約23時間前

ZigやRustなどはCが通用するニッチな分野でしか使えないって思い込んでいたけど、そうじゃないね。少なくともこれからは違う。このリンカーと他ターゲットへのインクリメンタルコンパイルが実装されれば、Zigは『Cの代替』になるだろうし、CやRustのパフォーマンスを維持しつつJSやPython並みのスピードで開発できるようになるはず。Andrewが当初夢見ていた、妥協のないUXを持つDAWを作ることもずっと簡単になるだろうね。誰かがZigネイティブなイミディエイトモードやリアクティブなUIフレームワークを作ればの話だけど。

とはいえ、@cImportが削除されたのはちょっと残念!あれがないと、もう自信を持って『C言語界のKotlin』とは呼べないよ。

4
quikoa
約23時間前

これらの改善はかなり期待できるね。リリースされたら早速試してみたい。

0.17.xでWindows側のコンパイラも何か改善されるのかな?それともLinuxだけ?

5
derefr
約23時間前

つまりこのリンカーは高速なインクリメンタルリンクができるということで、開発の反復スピードには最適だね。

でも、インクリメンタルリンクは何らかの形でリンク時最適化(LTO)と排他関係にあるんじゃない?つまり、リリースビルドでこれを使うことはないってことだよね?

6
ksec
約22時間前

他にも同じようなコンパイル速度を叩き出す言語ってあるかな?知っているか覚えている範囲だとTurbo Pascalくらいしかないんだけど。

7
librasteve
約22時間前

Rakuのバックエンド(MOARVM)をCからZigに移植する話が少し出ているね。例えば、Zigのより幅広いハッシュオプションは大きな最適化になる可能性がある。

尋ねられたから答えると、フロントエンドはNQPでセルフホストされているし、成熟しつつあるRakuASTプロジェクトのおかげでRaku文法への移行も進んでいる。新しいAST(6.e.PREVIEW)は、より優れたイントロスペクションと高レベルな最適化機能をもたらしてくれるはず。だから、VMをリファクタリングやリライトして大幅な速度向上を実現する可能性は十分にあるよ。

何にせよ、スキルがあって興味がある人は https://raku.org/community で一緒に楽しもう。

8
c0rruptbytes
約21時間前

Hacker Newsのデベロッパーみたいにクールでヒップな人間じゃないんだけど、最近Zigをよく見かける。これって今流行りの新しいやつなの?もうRustはおしまい?

9
onlyrealcuzzo
約20時間前

私は今、Zigにトランスパイルされるメモリセーフな言語を作っているんだ。Goのようなランタイムを持っていて、インタープリタ(GCなし)でもコンパイルでも動く。Rubyみたいな手触りだけど、TypeScriptのようにインクリメンタルな型付けができるようなものだ。

バージョン0.16から現在にかけてのZigチームのおかげで、RustではなくZigをターゲットにして本当に良かったと思ってる。Rustの方がメモリセーフだしターゲットにするのはずっと簡単だっただろうけどね。

Zigは最高のビルドシステム設計で、最高のトランスパイル先だと信じていたし、6ヶ月経った今でもそれを強く確信している。

私がGCを排除した一番の理由は、エイリアシングこそが全ての悪の根源だと考えているからだ。博士号がなくても使える、グローバルな複雑さがゼロの言語が欲しいんだよ。

10
androiddrew
約19時間前

早く1.0になってほしいな。そうすれば、企業でも本格的に導入できるようになると思う。