A rant on certain peoples manners.
Jan-Paul Bultmann <[email protected]> Sun, 10 Jun 2012 06:17:22 +0200
| Newsgroups | gmane.comp.lang.io |
|---|---|
| Message-ID | <[email protected]> |
Dear Kurtis,
Saying Io needs more literals and syntax and everything, because other languages need them is like saying it needs gotos and label because assembly needs them.
Also to quote David Ungar the creator of the Self language, ambiguity gives us power. So it is ok, if Object map does different things than List map. And it is also perfectly fine if [] does ten things in ten contexts.
The "core developer" are btw aware of most flaws, Sequence is a monstrosity with way too many methods, method names should be full unicode and the operator table is overly complex.
But you only have to take a look at the github page to see that these are things of least concern.
Of more concern is if Io builds tomorrow or is free of segfaults. Something which is awfully hard to achieve with only 2-4 people and a codebase of this size. This tiny tiny tiny community also means that there is a very small likelihood of a community split as you seem to fear.
(Something which hasn't killed lisp contrary to popular believe but made it adapt to many platforms, while still having a low adaption burden for programmers.)
But what really bothers me is that you lack that humbleness that developers normally gain after they reach a certain age or level of wisdom.
Instead of joining the community, listening for a while learning the ways and style of the language, meeting the people (who are awfully nice btw), and then contributing, the first thing you say is "do we really need that = in assignments".
Yes, yes, we do need = in assignments and the idea of replacing it with nonsense characters is incredibly stupid, and wasting everybodies time.
Something one will totally forgive and not mention because "hey, be kind to the new guy, he's a new guy".
But it becomes even more bothering, when you shout into the public, look at this shit, I can do it 10 times better, look at all these things I introduced that I learned from things I did in the past.
The problem is this not only reflects bad on Io, because some of the poo sticks to the wall. But more importantly it will make you look like a complete dick.
Because everybody who wrote Io code for more than 2 weeks embracing the concepts and not fighting with all his might against them, will notice that the whole thing is pretty well thought out. Sure it has its flaws but those are known (see above).
Unlike most "grab-bag-languages" as David calls them, Ios cogs, while they could need some grease again, and more mechanics, are made to fit pretty good into each other.
• The lack of syntax allows you to write macros and higher order functions, without worrying to much about a translator (operator table is bad enought).
• The reimplementable [ and { allow you to use both list literals when you do list processing [1,2,3] and Obj-C Bridge calls [foo:[bar]] when you speak with Obj-C, when you fix them to one, you're stuck, and who's to decide what is more important.
• Coroutines go well with the actor model.
• And assignment looks the way it does because of math ( := ) and differs in = and := because of the way slot assignment is handled in locals.
• Also if you use do in places besides major prototype definitions or need nil values you're doing things wrong.
And you complain about how you can easily define macros and extensions to make your live easier, because they are not buildin?
Did the thought ever occur that other people have other needs and also have the chance to implement their solutions this way?
Yes, I for example find your list literals silly and use Obj-C so does Steve and a lot of other people, yet we didn't force you to use them for that ,but left you the choice for having them as list literals, didn't we?
All those things which you would have learned had you actually joined the community, not riding along as the white knight in his shiny armor saving the Language from Doom all on his own.
Because while you might be that white knight one thing is for certain,
you will accidentally slay the princess and marry the dragon.
Cheers,
Jan
A commentary rant on this(and everything else): https://gist.github.com/2848173#comments