That in turn means you need to compile it to something like the CSP-transformed JS you use for async/await. It's not just a little bit of sugar for a method call. The compiler needs to be aware of it so it can transform the code appropriately.
However, from looking at the code, it looks like spider currently only does this for channel reads. Writes are always non-blocking, which limits their usefulness.
So much of this is down to fashion. Are programmers really bound by their typing speed? No.
The only real thing that matters with a language is "can I run this on hardware X", and "How fast does it run / how much memory". Syntax is utterly irrelevant (Unless you're into fashion).
Lisp is just basic with a different syntax...
I know when I started working on Angular apps after living in my Xcode bubble for so long, the first item on my list was to find a good IDE for web development. Sublime is good, but it's not that good. I don't type very much, I hit Tab key.
Which of the following is clearer?
plus(new vector(5, 3), scale(3, new vector(7, 3)))
new vector(5, 3).plus(new vector(7, 3).scale(3))
<5, 3> + 3 * <7, 3>The last one is least readable IMHO. It's like a regexp. It's the most ambiguous and has the most potential for errors also.
It's hard to typo "function" and have a program still compile/run. It's a lot easier to typo "fn" and still have the program compile/run. Smaller tokens mean more potential errors.
That's like asking an author if he writes using the alphabet or ascii.
Programming language debates are like asking Charles Dickens why he wrote in English rather than Russian. Would his books have been any different in Russian? No - it's irrelevant.
Any translator (or even bilingual person) will tell you that some concepts are very hard to translate, because the target language was shaped by a different culture.
And in scientific and other non-fictions texts - which are closer to programs than literature - this was doubly so, as the number of important scientists and philosophers writing in non-native languages shows.
Take a look at http://spiderlang.org/ :)
That and the fact that I've noticed my colleague has been rewriting callback code I wrote into ugly promise-like objects so they could be more powerful, so I think it's a good time to be exploring for nicer ways of dealing with the issue, preferably with some sugar.