Introduce a memory safe compilation mode inspired by Fil-C
21–30 of 49 posts
Re: Introduce a memory safe compilation mode inspired by Fil-C
#22Zig main dev proposes to introduce a Fil-C like compilation mode to make zig safe: it's only natural to mention how that's different from Rust, right? What about all the other languages, Andrew? I'm tired to see zig head people trying to diss Rust whenever they can. It's annoying for people that enjoy both languages and it's really a hint of how toxic the zig community is.
They focus on Rust because it's the global standard everything is compared to these days. It would be good for it to have some competition, even if we also wish its critics were more careful in their phrasing.
Re: Introduce a memory safe compilation mode inspired by Fil-C
#23Fil-C is an amazing, marvelous even, and useful, concept. Useful for all legacy code that will not be rewritten and/or is not performance-sensitive, that is. The only problem is that Zig has no legacy code, so Fil-C is useless there. If you can afford the performance penalty, there are much better an easier languages to choose from.
Re: Introduce a memory safe compilation mode inspired by Fil-C
#24Fwiw andrewk seems to be deleting comments that criticize this approach. Not a good look on his part.
If you see a substantive comment you think might be deleted, screenshot it. But I do see debate in there.
If you want to comment in this thread, please either have your open source zig project(s) visible on your codeberg profile, or be Fil Pizło, otherwise zig issue tracker is not interested in what you have to say
Sadly I didn't get a chance to screenshot anything, but he's definitely not just deleting the toxic comments.Re: Introduce a memory safe compilation mode inspired by Fil-C
#25Fwiw andrewk seems to be deleting comments that criticize this approach. Not a good look on his part.
The Zig issue tracker is for technical discussion; you are more than welcome to engage and debate the idea on its merits. But we do indeed delete meta-commentary, wild speculation, and outright hostility.
If you want to comment in this thread, please either have your open source zig project(s) visible on your codeberg profile, or be Fil Pizło, otherwise zig issue tracker is not interested in what you have to say
This itself is hostility towards anyone who isn't a zig expert pretty much.Re: Introduce a memory safe compilation mode inspired by Fil-C
#26Static analysis based approaches restrict what is possible to express in the language (See: doubly linked lists). But can have lower dynamic overhead.
Ways to work around expressiveness limitations include strategies such as using indices into an array instead of pointers. Which in turn incurs the dynamic overhead from bounds checking.
Maybe zig could find a way to elide enough of the capability overhead that careful programming could get a Another key pro to capabilities is that you can actually have a memory safe interface without having to leak lifetime and other info across boundaries. This would be great for compile times and places where open source is not tenable.
Regardless, I’m very happy to see another independent school of thought approach memory safety. I’ll forgive Mr. Kelly any gruffness, these topics can be quite annoying to discuss in public.
Re: Introduce a memory safe compilation mode inspired by Fil-C
#27Earlier quoted context omitted.
The Zig issue tracker is for technical discussion; you are more than welcome to engage and debate the idea on its merits. But we do indeed delete meta-commentary, wild speculation, and outright hostility.
Apparently I'm not. Directly from andrewk himself: If you want to comment in this thread, please either have your open source zig project(s) visible on your codeberg profile, or be Fil Pizło, otherwise zig issue tracker is not interested in what you have to say This itself is hostility towards anyone who isn't a zig expert pretty much.
Re: Introduce a memory safe compilation mode inspired by Fil-C
#28Re: Introduce a memory safe compilation mode inspired by Fil-C
#29Re: Introduce a memory safe compilation mode inspired by Fil-C
#30Without explicitly entering the language holy wars. I think there’s an interesting trade-off here. Static analysis based approaches restrict what is possible to express in the language (See: doubly linked lists). But can have lower dynamic overhead. Ways to work around expressiveness limitations include strategies such as using indices into an array instead of pointers. Which in turn incurs the dynamic overhead from…
> Another key pro to capabilities is that you can actually have a memory safe interface without having to leak lifetime and other info across boundaries.
One of the benefits of having lifetimes in the type system is thread-safety. Again, there is a lot of focus here on just memory-management: use-after-free, double-free, etc... But, being confident in the code running in a threaded environment is important as well.