Well, IMO Nim(rod) is pretty cool as a better-C replacement if you can stomach Pascal-like syntax (and has macros!). Except it has a non-optional soft-realtime GC, but that hurts only if you need to be hard-realtime.
Racket is really nice, especially for teaching, but it's nowhere near as performant as C/Nim/Rust.
As for Rust's syntax they seem to have gone into "make everything explicit as fuck even if it makes language read worse" direction I'm not sure I'm fond of. I mean, yeah, you can layer syntax sugar on top of that, but still. It felt more elegant before, though maybe it's a conscious choice, just like the "sacrifice neat features if performance suffers" approach which killed spaghetti stacks or optional GC.
Oh, I didn't do that to make C++ appear worse than it is, I just prefer to be explicit about where symbols come from (for example I almost never refer symbols in namespaces when writing Clojure, preferring alias them so I can write `time/now` instead of `clj-time.core/now`.
I did however consciously not use C++11 features like did*, because it's fairly new. As you can see using that kinda helps, but still is fairly verbose compared to just `map (* 2)`.
Also yeah, that's Haskell, just with explicit argument compared to the other user who used currying.
* - actually, him templating the whole function is somewhat more true to parametrically polymorphic spirit of the Haskell version, so yeah, my bad.
Well, yes. There's several topics "discussed" on the labs - classes, multiple inheritance, RTTI, exceptions, templates, STL containers, STL algorithms and probably a few I'm forgetting. If you have less than a 2/3 of those they dock you points, which is so stupid because most of programs second year students can write don't need esoteric things like RTTI or multiple inheritance.
Oh, and by discussed I mean the students are given a topic to prepare by themselves and the lazy bum of the supervisor nodding absentmindedly because they don't know C++ well enough to tell if students make shit up either.
No wonder there's so much dumbfuck programmers nowadays.