On Sunday, 10 July 2016 at 21:35:16 UTC, Walter Bright wrote:
On 7/10/2016 7:54 AM, Ola Fosheim Grøstad wrote:
Ok. Those are syntactic conventions.
You're changing the subject.
What? Nope, but let's stick to what most people evaluate: the
core language. Syntax isn't really the big blocker. Yes, it may
be sufficient to annoy some people, but it is when the core
language is different that programmers get serious problems.
Some examples of somewhat elegant languages, that also are useful:
Beta, everything is a pattern or an instance of a pattern.
Self, everything is an object.
Prolog, everything is a horn clause.
Scheme, everything is a list.
All of these are useful languages, but programmers have trouble
getting away from the semantic model they have of how programs
should be structured. Btw, C++ is increasingly moving towards the
Beta model: everything is a class-object (including lambdas), but
it is too late for C++ to get anywhere close to elegance.
Face it, your argument is destroyed :-)
Of course not. Consistency and simplicity is not undermining
usefulness. The core language should be simple. It has many
advantages and is what most language designers strive for,
unfortunately the understanding of what the core language ought
to be often come too late.