I can’t say that I’m particularly pleased with this, even though I’ve spent many years working on the language in one way or another. But I am not all that surprised, particularly in hindsight.
But perhaps I can share the premise: I think languages become popular while they are small and simple (and that holds for C++ too) and then, once they gain adoption, they become fiendishly complex because they are not quite up to the job and become ever more useful in a haphazard way in kitchens with far too many chefs.
So, new languages have to start simple. But just how simple can we make a language? No person in their right mind want to write real programs for Turing machines or using the Lambda calculus. LISP (or Scheme if you prefer) have been around forever claiming to be so simple that it doesn’t even need a syntax. And while there are plenty of sane people who write real programs in LISP/Scheme, I am not one of them. Nor do I find LISP/Scheme particularly simple. Only the concrete syntax is simple (far too simple for my taste). It still takes a thick book and lots of dedication before anyone can really claim to be a master of LISP/Scheme.
Far better candidates for the title of simple, yet useful, powerful and above all beautiful are languages like Icon and SETL.But I think it is clear enough that these languages have reached the end of their road.
So let’s start again. I want a language that is at once as simple as possible while powerful enough and beautiful enough that I would be happy to use it for my actual work on a daily basis.
In my new few posts, I plan to set out my bottom line: What do you need to put in language if you hope to count me among its happy users?