3 ms·
It's good to see the project soldier forward! Some things I am excited about for the future: - Continued progress on the new "stage2" compiler, which is writte
by dbandstra 6y ago
It's good to see the project soldier forward! Some things I am excited about for the future:
- Continued progress on the new "stage2" compiler, which is written in Zig itself (long promised, work started in earnest I think about six months ago). There will be an optional non-LLVM backend this time, which is good news for build times. Even in debug mode, most of build time currently is spent waiting for LLVM.
- Incremental compilation with live reloading (in-place binary patching). The stage2 compiler is being written with this feature from the start.
- I can't find the link, but I believe the plan for stage1 (the current compiler written in C++, with all its warts) is to simply delete it. Since the new compiler will also support compiling to C, the devs will simply have stage2 compile its own source into C at some point, and that will be the stage1 from that point forward.
- AndyKelley 6y ago> I can't find the link Here you go! https://github.com/ziglang/zig/issues/6378 https://github.com/ziglang/zig/issues/6378
- acqq 6y agoSo did I understand correctly? The "bootstrap" stage which is best to be in C (for the targets which don't have LLVM) will be just the output of the compiler compiling itself to C, and that will be regularly produced and pushed as the compiler grows? And that's one of the steps to make it LLVM independent? P.S. Amazing work up to now! Kudos! I'm a fan just for everything it does what other language designers ignore, like designing the language to both compile and link fast. Cross compiling always available is a masterpiece. I guess that feature wouldn't have to be present on the platforms which don't have LLVM, if the language is to work on such too?
- wyldfire 6y agoWow, a C backend sounds interesting. Should be super portable if they maintain it alongside LLVM.
- vijaybritto 6y agoIn case you didnt know, the person whom you replied to is the creator of zig language.
- Karupan 6y ago> Incremental compilation with live reloading (in-place binary patching) That is awesome! I’ve longed for such a feature when I work with Go and Rust although Go is usually fast enough that I can use a custom watch script.