Earlier quoted context omitted.
With limited time and mental energy and I woukd say the languages are fighting for attention. The war is over why should I pay attention and for territory in my head.
Because this industry is a knowledge-based industry, and it's a good idea in general to always be honing your skills and learning something new. Even if you don't have any intentions of using a new language in your day to day career, there's usually a few super-interesting morsels in there that you can add to your knowledge banks. I've personally lost count of the number of times I took a concept I learned in another…
TigerBeetle and Synadia pledge $512k to the Zig Software Foundation
101–110 of 213 posts
Re: TigerBeetle and Synadia pledge $512k to the Zig Software Foundation
#102Earlier quoted context omitted.
>leaving Rust for Zig for the sheer enjoyment of using it instead. What do people find more enjoyable?
Zig feels like a better C with modern tooling. It is a tool that works for me. Rust feels like a better C++ with modern tooling. I am a tool that works for it.
Is it? Or is it a tool that won't bug you when you make a mistake?
Programmers tend to, as Djikstra noted[1] confuse ease of programming with allowing unforced errors.
Re: TigerBeetle and Synadia pledge $512k to the Zig Software Foundation
#103Earlier quoted context omitted.
In a way, it's a return to simpler times. I remember learning programming C and it was about programming computers, not abstract concepts. As languages got higher level abstractions, we lost touch with the computer. That's why programs are so bloated today. Zig respects that we are programming a computer, with concrete behaviours, it doesn't try to abstract things away, doesn't hide complexity, and yet gives you tool…
Yet computers are abstract concepts :-) And C is basically high level assembly for the PDP, which has little in common with x86, for example.
Re: TigerBeetle and Synadia pledge $512k to the Zig Software Foundation
#104Earlier quoted context omitted.
It's like saying bacon is better than cheese. I totally get why some people would feel that way, but it's far from a universal feeling. Tastes are just subjective.
I think most folks would agree that Rust is an "acquired" taste. You need to kneel to the borrow-checker and develop something like a Stockholm syndrome before you find the language delicious.
That was not my experience at all. I liked the language from the get-go. And the more i dug into it, the more i found to like. I really appreciated the design of Rust's iterators, and traits, and general language design, way before i stumbled into any major issues with the borrow checker.
I feel like this depends very much on the programming style and probably on the domain. But i found that programming in a mostly "functions and simple data structures" way, passing things down to other functions that need them, and just processing data instead of "modeling the domain" into mutable and confusing "objects", i didn't really come across many lifetime-related issues that the borrow checker warns about.
And the few that i did found, they were actually errors on my part, and Rust detecting them was quite helpful. Things like trying to mutate a collection while also iterating it.
So, IDK, YMMV i guess.
Re: TigerBeetle and Synadia pledge $512k to the Zig Software Foundation
#105Earlier quoted context omitted.
In a way, it's a return to simpler times. I remember learning programming C and it was about programming computers, not abstract concepts. As languages got higher level abstractions, we lost touch with the computer. That's why programs are so bloated today. Zig respects that we are programming a computer, with concrete behaviours, it doesn't try to abstract things away, doesn't hide complexity, and yet gives you tool…
Yet computers are abstract concepts :-) And C is basically high level assembly for the PDP, which has little in common with x86, for example.
On the other hand, every architecture that has tried to expose them so far has failed; nobody wants to manually apply the Tomasulo algorithm to their code, or manage shuffling data elements into and out of their cache hierarchy.
Re: TigerBeetle and Synadia pledge $512k to the Zig Software Foundation
#106Earlier quoted context omitted.
I think most folks would agree that Rust is an "acquired" taste. You need to kneel to the borrow-checker and develop something like a Stockholm syndrome before you find the language delicious.
I'd guess that in 99% of cases, if the borrow checker is a problem for you in Rust then you are likely not ready yet for C or Zig, particularly when you need to work in a team where mainatainability by others is critical. There are some cases the borrow checker requires you to go through hoops for but I see that as a win for adding friction and raising visibility of weird patterns. And yes, there are cases that can't…
Re: TigerBeetle and Synadia pledge $512k to the Zig Software Foundation
#107Such an excellent summary. I've been trying to communicate this regarding the difference in Rust and Zigs approach to memory safety, and Joran does it so much better than I ever could.
Re: TigerBeetle and Synadia pledge $512k to the Zig Software Foundation
#108> For each of our companies to donate $256,000 in monthly installments over the next two years, with Synadia matching TigerBeetle, for a total of $512,000 Why over 2 years? Like VC investment, Id assume a lump sum up front allow them to move faster with that money (hiring the right people sooner, etc.) I wonder if projects like this care more about predictability of income (e.g. not hiring people depending on future…
I assume it’s being budgeted out of their monthly cash flow, not coming out of cash reserves. > Id assume a lump sum up front allow them to move faster with that money (hiring the right people sooner, etc.) On the other hand, the monthly payments mean they’re less likely to overcommit their spending up front. If they’re hiring someone with twice-monthly paychecks, receiving the money up front doesn’t make much differ…
Re: TigerBeetle and Synadia pledge $512k to the Zig Software Foundation
#109Earlier quoted context omitted.
It's not kneeling it's literally just eliminating bugs. It's kind of like saying that we kneel to logic while doing math
The problem I have with what I call "bondage and discipline" languages is that while it has value making sure the code is correct, it is not pleasant (for me) to work with. Sometimes I just want to try out stuff, I know there is a bug, in fact, it breaks everything, but that's exactly what I want, I will revert it once my little expertement is complete. Strict languages will refuse to run anything unless you make sur…
Re: TigerBeetle and Synadia pledge $512k to the Zig Software Foundation
#110The reason for not choosing Rust still doesn't make any sense to me. If you don’t want to OOM, need correctness, are following the power of ten (where you aren’t allocating anyways), I don’t see the conflict or harm of additional enforced correctness. Also, Rust does support checked arithmetic and has stable toolchains.
Zig gives you a lot of tools to enforce correctness in simple and straightforward ways, where as Rust comes with a lot of complexity. TigerBeetle isn't the first project to talk about this, Richard Feldman also points out similar advantages to Zig over Rust as the reasoning for the Roc compilers rewrite from Rust to Zig.