On Friday, 17 July 2015 at 10:15:05 UTC, Martin Nowak wrote:
On Friday, 17 July 2015 at 00:08:42 UTC, Tofu Ninja wrote:
Well this was 214 replies of wasted time...
Just b/c the outcome is the same doesn't mean the discussion
was pointless.
We reached at least some sort of consensus which should prevent
any future complaints about the chosen name.
No, you did not reach consensus, and there will be future
complaints about the terminology used in D (unless the language
dies). If you pick inconsistent terminology that breaks
established usage, people will complain…
So it was wasted time. And more time will be wasted the same way,
due to a lack of process.
If you want consistency you need 2-4 people who know the field
really well and reach actual consensus. When too many people who
don't know the field really well are involved you get bastardized
syntax.
The vocabulary should not be defined name by name, function by
function. It should be, you know, an index that you can
reference. So a set is a set, a sequence is a sequence, and array
an array, a list a list, a linked-list a linked-list and so on.
A well designed language has a small vocabulary with not much
overlap and expressiveness grow out of it. That way you don't
have to memorize so much.
If you need to read the docs to deduce what goes on in a function
then it isn't good enough. Which is why constructs with weird
behaviour should have longer descriptive names.
In this case, you wanted a short unique name to describe weird
behaviour. That's going to make code hard to read.