[Toybox] zig ?to overthrow C?

Rob Landley rob at landley.net
Tue Mar 24 19:25:25 PDT 2020


On 3/24/20 5:23 PM, scsijon wrote:
> Thought this may be "interesting"????
> 
> QUOTE:
> Zig is a general-purpose programming language designed for robustness,
> optimality, and maintainability. Zig is aggressively pursuing its goal of
> overthrowing C as the de facto language for system programming. Zig intends to
> be so practical that people find themselves using it, because it "just works".
> /quote

"Oh no, not again." - bowl of petunias.

> url for latest is
> https://ziglang.org/download/0.5.0/release-notes.html

Yeah, I got pointed at it on Line earlier. Apparently its creator is doing a big
PR push. I believe this is the [count count count]... thirty fourth language
THAT I AM AWARE OF to declare its intention to overthrow C? I'd have to dig up
the list. Obviously it will do a better job of it than Apple's Swift, Mozilla's
Rust, Google's Go, and the hundreds before it. (You're aware I took a stab at
rewriting busybox in lua a dozen years back, and just confirmed that C was the
langauge toybox needed to be in?)

Seriously, yet another language du jour was already a running gag THIRTY YEARS AGO:

https://stuff.mit.edu/afs/athena/project/w92/www/lesser-known.shtml

A list of 2000 programming languages went by on the Fidonet programming echo
towards the end of my first year at Rutgers (probably 1993), which I'd think I'd
imagined but no, I've looked up a few of the names and
https://en.wikipedia.org/wiki/Oberon_(programming_language) not only still
exists but IS STILL MAINTAINED. (And not in an "intercal" way.)

Anyway, this new language is profoundly uninteresting to me but if you're saying
it might be a usable C compiler the same way gcc and llvm are despite also
compiling other languages... wake me when it builds a bootable kernel like icc,
tccboot, and llvm have? I was rooting for the pcc reboot for quite a while. Once
upon a time I convinced the qualcomm hexagon guys to pivot from open64 to llvm.
Rich Felker had a C compiler project he liked and I think I got it to build
toybox once (I keep thinking it was a derivative of the Amsterdam Compiler Kit
but no, now that I look it up it was libfirm+cparser) but it was nowhere CLOSE
to building a kernel. I wonder what happened to openwatcom?

Anyway, I asked the guy who pointed it out to me earlier what its build
dependencies are, and he just got back to me to say it apparently requires cmake
and gcc or llvm to build. I.E. it's not a self-hosting compiler, it's just yet
another layer on top of an existing one. Not only does it not build under
itself, but it embeds llvm+clang+lld to function.

If so, I _officially_ don't care about that project. Good luck with it. (Why did
you post about it here, anyway? "I disagree with the language you have chosen to
implement toybox in" should mean what to me? Are you suggesting I abandon the
project or start it over from scratch? Why exactly would this be on-topic here?)

Rob



More information about the Toybox mailing list