Interesting that it seems to support first class lists but not first class procedures. That's because Stefano's target languages were ancient ones such as C and C++. :~)
C is definitely for making operating systems, but operating systems (real ones, not Scratch-style simulations of them) have to run right on top of the bare hardware, not in a block language on top of a browser. It's still not clear to me what good C++ is.
And yes, Stefano's work is a real tour de force, which pushed the limits of what BYOB could handle when he started working on it. I didn't mean to say his work was no good, just that I think I understand why the screenshot you showed includes list reporters but not HOFs.
"Tour de force" means a display of extreme ability, with a vague connotation that the display (rather than some practical purpose) is the object of the exercise (although I'm not suggesting that about Stefano's work).
"HOF" is the acronym for "higher order function," a function that takes a function as an input and/or reports a function. MAP, KEEP, and COMBINE are the paradigmatic examples. (Don't ask me what "paradigmatic" means! If you don't know, ask your computer. :~) )
Yes, C/C++ is mostly used for things that need to be close to hardware, like operating systems or embedded systems like calculators and microwaves (I think?), or things that need to be very performant, like game engines.
The two languages are quite different, despite the similarity of names and the fact that C++ was originally implemented as an extension of C. (Think "Scratch/BYOB"!)
C is a small, fast, elegant language for manipulating computers at the hardware level. So, yes, operating systems are the most obvious application, and in fact C was invented to implement Unix. The part of a compiler that deals with register allocation and optimization is also a good match for C.
C++ is an attempt to be a high level language (of the object-oriented school) and a low level language (c) at the same time. In my opinion it fails at both tasks. (Not just my opinion; Java (not JS) was designed with the explicit purpose of cleaning up the messes of C++.)
Yes they are pretty different, but they are used in similar fields, am I wrong?
Speaking of C++ not being a well designed language, what languages would you recommend for similar use cases? I heard of Rust and it seems to be a pretty interesting language. Which is weird because one of the reviews on the sites praised Rust for being “boring”. I also heard of Go. I don’t know much about Go.
Offtopic but interesting tidbit! JS was intended, in the early days of the internet, to work with or replace Java applets and things like that in websites.
Remaining off-topic. This is probably the last I'll say about Java vs. JS here.
Not, like, immediately after its launch, it did take a bit of time. But then JS really caught on! Then Java started being phased out (in general, it's not like everyone suddenly dropped it) for security reasons, yadda yadda yadda.