Whoa, thanks for the heads-up. I've been reading news about Zig from time to time, and planned giving it an honest try at 1.0 (whenever that may be) but it seems I'm out of luck.
Do you, by chance, know the reasoning behind this step?
If I were a Rust user, I'd be really afraid of what will happen to Rust when Microsoft gets hold of it in any way. Just look at what happened to C++ after it got popular because of Windows/Visual C++ and the strong ties between Microsoft and WG21 in the 90s/00s.
I can't help it, but reading Dom McLaughlin's testimony (scroll down to the examples) "...let's just say I'm not the most photogenic person..." makes me want to instantly go out and hunt down every picture of me ever made and nuke it from space :-).
There is only one point around the whole Oumuamua topic for me, that makes me a bit sad. Extraterrestrial or not is not it, but that we had no means to just fly there (with or without humans) and checkout what it is.
Even worse, it seems no one in the scientific community (please correct me if I'm wrong) stepped up and said "We need to change this!". And it seems we will not have those means in the coming years/decades.
Honestly, if we can't do this in our own neighbourhood, because we simply lack the will power and consensus to do it, it says a lot about the future of space exploration.
This has nothing to do with C, and everything with its intended problem domain.
You can get into pointer and memory errors in C++, Rust and Ada. All of them low-level system languages. Sure, those errors might be harder to produce, but not impossible, and definitely easy enough to still trip you up.
I programmed in all of those languages, except Rust (just don't like it). At least in C you pretty much now WHY (not necessarily where in the code) things went south, without consulting a thousand page specification or having to remember the myriad of language feature interactions that could have triggered those problems.
Moreover, C being small, it's a good on/off language. Try doing a code review for a C++/Rust/Ada code base which uses features heavily after not having touched the language for a year. I bet it is not as easy as C.
You know, some things in life are just hard. And low-level programming is one of those things. C is only honest about this.
As someone who started his own company fifteen years ago I can relate.
Being german, the process itself was not that much of a hassle. But the financial aspect of having to pay for so many things i do not need or want (IHK membership, Genossenschaft membership) was mind boggling.
There is a joke they tell you in Germany when you think about creating a company:
How do you make a million Euros in Germany?
Take two and create a company.
"Your program will also boot on bare metal too. In other words, you've written a normal textbook C program, and thanks to Cosmopolitan's low-level linker magic, you've effectively created your own operating system which happens to run on all the existing ones as well."
I hope i did not understand you wrong, but what I meant was the following.
We create electric energy from source X. The electric energy is mutated to heat, or mechanical energy or what not (computers produce heat, electric cars mutate it into kinetic energy and so on). Energy is never destroyed, it just changes its form. So if we produce/consume more energy than now (yes that's just theoretical) would that contribute to climate change in a significant manner?
As i understand it, nuclear fusion could (as soon as really achieved, i.e. there exist commercial plants) provide more energy than we are currently producing by all other methods. And if we can produce it, I have no doubt we would use more and more energy.
Which would mean that all this energy must end up somewhere somehow. What I would like to know is, don' we then (just in another form) contribute to the heating of the planet again? Are there any studies/theories about that? What would the impact of the ever increasing energy release/production be?
All the HN threads about recruiting mention this. I get the argument, and yes, there seems to be no better way than to test the candidate (no matter if it is a take home test, online, or onsite). As I see it, most of these tests are about algorithms and data structures, not real, practical problems the company has/had.
What I do not get is the following. Most companies (especially FAANG) demand a CS degree and then give you those coding tests about algorithms and data structures your degree actually proves you know about. If the candidate got the degree thirty years ago, then (maybe) fine. But even candidates fresh out of university? And even if you do not recall them in an instant, your degree should prove you can successfully research and understand them. Is a CS degree actually anything worth then, if I still have to prove this knowledge every time I apply for a job? And if it's not about theoretical things, why demand a degree and test for theoretical knowledge instead of practical problem solving skills?
> What do you suggest for the 99%+ other candidates?
What about (instead of forcing a months long decision process upon the candidates and the company) bringing them into the company after a short interview (maybe 2hrs), and making sure they can afford housing, food and everything else they need.
If you like their work, they stay employed. If, say after one month, you do not like what you see, you can easily let them go. Of course you tell them upfront what the deal is.
We could call it, I don't know, maybe trial or probationary period.
That's why you don't use it on small microcontrollers (8/16 bit). And if you absolutely have to, use it once on startup to implement a dynamic memory pool.