zig その3
ここのところ zig
の練習を進めているのだが、だいぶ良い。
zls の改造 や, wasm の実験, microui の移植 あたりをこなして、 だいぶ慣れた。
C/C++ と連携させる、zig から C を呼ぶ、C から zig を呼ぶ、の双方ともに かなり高いレベルの使いやすさがある。
zig-0.10
の開発状況が SelfHosting コンパイラに注力しているところ。
これは重要なのだが、外見えの機能が良くなったりするところではない。
むしろ、一時的にバグが出たり、機能が後退したり(async が未実装だったり)する。
その次くらいから、また良くなるんでないか。
std
にある async
とか eventloop
の痕跡を見ると、
そのうちに標準にライブラリに libuv
的なものが入りそうな感じがする。
zig は、型アノテーションを付けた python
と c++
の間くらいの記述量でコードを書けるので
記述する速度と、実行速度のバランスがよい。
wasm
に関しては使えると判断できた。
敢えて zellij のプラグインを zig
で書くスタイルが良いかもしれぬ。
TODO:
- zig 自前ビルド。llvm の準備から。
glibc-2.34
縛りを回避できるか知りたい - arm へのクロスコンパイル。
Android NDK
を zig でやる