It might sound somewhat unexpected from the person that’s just gone through a gargantuan effort of converting a (“small” yet still sizeable) #Scheme standard to #HTML, but… I’m still not sold on Scheme. True, it’s a
• Modern language.
• That gets Unicode and UTF-8 right.
• That has just enough operators to potentially do anything. (Any less ops and it’d become quite hard to accomplish some things.)
• That has reasonable semantics not tied to any machine. With sane memory model that works both in embedded and general programming!
• That is a Lisp. And that’s modernizing some things about family’s handling of… everything!
But still, I’m indecisive. #CommonLisp, exposed by this Scheme comparison as quite crusty with historic accidents, is still a better language in many ways:
• Typing (albeit quite simple) included in the core language.
• eval, read, and write heavily tunable for interpreter building, the very case Scheme should’ve excelled in.
• REPL and debugger behavior specified beyond probably what any language does in this regard.
• Extreme stability and portability of even non-trivial programs; “Triviality as a Virtue” library ethos as I call it.
• The ability to go full stateful and low-level, down to raw bits (not many languages actually can do that without bit masks etc.!) and GOTOs; huge/endless optimization opportunities.
Aaaaaargh. As someone in search of a universal and collapse/shit/future-proof basis for my computation, I’m extremely annoyed. Need to write some things in Scheme to make up my mind. Maybe make an SRFI or two (covering the CL areas above, typing is already covered!), possibly about meta-PL things like parsers and interpreters. Maybe that will expose me to real (yeah, I know, PLs are not “real” programming, but they well are for me!) Scheme and whether I want to commit to it.