zig
tree-sitter-crystal | zig | |
---|---|---|
1 | 843 | |
30 | 34,699 | |
- | 2.2% | |
6.8 | 10.0 | |
6 months ago | 3 days ago | |
C | Zig | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
tree-sitter-crystal
-
Crystal 1.1.0 Is Released
There's a few LSP implementation that are very usable: https://github.com/crystal-lang-tools/scry, https://github.com/elbywan/crystalline
Beginning of a tree-sitter parser here too: https://github.com/keidax/tree-sitter-crystal
zig
-
Zig is everything I want C to be
> will that function also get to return a u8?
No, the main function (the entry point of the entire program) is special cased. Have a look at the source code. There you can see the it's calling the user defined main function and handling its return value / error.
https://github.com/ziglang/zig/blob/2d888a8e639856e8cb6e4c6f...
> Also, what happened to argv/argc?
You can access argv with std.os.argv which is a slice of null terminated strings. It's better to go with std.process.argsAlloc though (requires an allocation but works on all supported platforms).
-
Introduction to Zig (a project-based book)
I'm a bit hesistant to mentally invest in Zig, given the maintainers choice to directly develop against a mostly undocumented NT-API instead of the Win32 API.
[1]: https://github.com/ziglang/zig/issues/1840
-
Huly – Open-Source All-in-One Project Management Platform
Interestingly, Huly is also the sponsor of the Zig programming language[1].
[1]: https://ziglang.org/
-
Pledging $300k to the Zig Software Foundation
> And there's also the aliasing issue
Plans to address this were shared just last week: https://github.com/ziglang/zig/issues/5973#issuecomment-2380...
-
One must imagine Sisyphus writing a new JS framework
You crave the simplicity of C, but miss modern features and a nice build system? You got Zig
-
The Python Package Index Should Get Rid of Its Training Wheels
I raise you https://github.com/ziglang/zig/issues/20875
It is not entirely clear what any of this means, and in any case, it keeps changing all the time.
-
Don't defer Close() on writable files
Arguably, one should call `flush()` on the file first. Resource allocation must always succeed; otherwise a lot of invariants break. This is why Zig's close method[0] ignores errors (with the exception of `EBADF`).
[0]: https://github.com/ziglang/zig/blob/fb0028a0d7b43a2a5dd05f07...
- Zig: Prefer depending on NtDll rather than kernel32 or other higher level DLLs
-
Book – Writing a C Compiler: Build a Real Programming Language from Scratch
Zig is moving away from LLVM (https://github.com/ziglang/zig/issues/16270) and Rust has added Cranelift as a debug backend (https://lwn.net/Articles/964735/).
Not sure about Jai.
-
C Macro Reflection in Zig – Zig Has Better C Interop Than C Itself
It won't require build.zig, you'll just have to run `zig translate-c` on the C file. Andrew's comment here[1] says that @cImport is basically @import + the compiler implicitly running `translate-c` for you. There was some discussion of removing the `translate-c` subcommand as well (which _would_ force you to use build.zig), but I don't think it's been decided to do that.
[1] https://github.com/ziglang/zig/issues/20630#issuecomment-225...