4 ms·
David is a great guy, but sometimes his talks don't get the point across in a powerful way. Clojurescript uses CSP (same concept as Go channels invented by Ton
by andrewchambers 12y ago
David is a great guy, but sometimes his talks don't get the point across in a powerful way.
Clojurescript uses CSP (same concept as Go channels invented by Tony Hoare) to allow simulated multiple concurrent threads of execution in javascript. How many compile to javascript languages have concurrency? not many.
Clojurescript has powerful immutability at the core of the language, macros that are so powerful they can add concurrency to single threaded javascript via a library.
I admit it's not simple to understand everything clojurescript has from a casual glimpse, but if you learn enough, it can really kick all the other compile to JS languages in the butt.
- amithgeorge 12y agoI am still learning FP and originally I was only looking at server side languages as I felt Javascript already lets me write code in an FP manner. It was after I read SwannOdette's blogs posts on ClojureScript and CSP that I started getting really excited about it. Couple that with Om and Flux, I think I would love writing apps that way. Meaning I was already sold on the potential of ClojureScript/CSP before even watching this presentation. My dissatisfaction wasn't with ClojureScript but with the presentation. Given that I saw the presentation out of context (I don't know who the audience at the goto; conference was supposed to be - experienced FP developers looking to move to web or existing js web developers looking for something better). Purely from the presentation, I (who belongs the latter) wasn't really sold on anything. Maybe I wasn't the group being targetted. Finally, I didn't watch the presentation because it was presented by David (I didn't who he was), I watched it for the title. It wasn't till midway through the presentation I realized SwannOdette is actually David. And that surprised me a lot cuz his blog posts are really good, and as I said really sold me on considering ClojureScript. I didn't intend to pick on David, maybe he just had a sub-par day. Especially after knowing David=SwannOdette :)
- klibertp 12y ago"macros that are so powerful" You just made every single Common Lisp programmer who reads your comment cringe. Clojure is a very nice language and while it has no real innovations it does bundle a few unusual (for mainstream) concepts into a single easy to use package. However, you should wait with calling Clojure macros "powerful" until after you get access to readtable. Or wait, you won't ever, that's a feature, supposedly...
- nickik 12y agoJust because its not the most powerful macro systen ever created does not mean that its not powerful, so the sentence is completly ok.
- weavie 12y agoIt is definitely more powerful than Javascripts...
- klibertp 12y agoYou mean it's better than Sweet.js? http://sweetjs.org/ http://sweetjs.org/
- weavie 12y agoNo, I haven't looked into sweetjs enough. I was just referring to raw javascript macros.. (ie. non existent).
- klibertp 12y agoRight, in general languages without any means of syntactic abstraction feel contrived to me now, and after working with several macro-enabled languages I really want to have support for them in more places. JS (Sweet.js), along with Dylan and Nimrod (and others) showed that it's possible to have real macros in non-prefix languages - I wonder how long it will take the "mainstream" to become comfortable with this feature. It looks like it takes anywhere between 20 to 40 years on average for concepts to "enter mainstream", so I think we're going to have to wait quite a long time yet.
- nickik 12y agoYou might want to check out the PLOT langauges, its just a spec but a great read if you are into macros.
- deleted 12y ago