Hacker News new | past | comments | ask | show | jobs | submit login

I'm wondering if this has the refs, agents, and atoms that make concurrent clojure so awesome. If not, it would feel.... strange.



Atoms are there. The others are not, but they would be pretty much meaningless in a Javascript engine anyway, since Javascript is specified to be single threaded.


JavaScript does have Web Workers, though, which are threads/processes.

They have no shared state though, not sure if that is a problem in this case or not.


The impression I got is the core syntax is all there, you just don't get access to the jvm libraries anymore.


All of the core syntax is not currently there, but you're right that ClojureScript only interops with js and not Java. For a more detailed differences list see https://github.com/clojure/clojurescript/wiki/Differences-fr...


Bear in mind that the wording is very careful. We took great pains to say things like "not currently implemented." ;-)


"ClojureScript does not currently support regular expression literals using #"" "

This one seems like a big deal, given how often I find myself using regexes in clojure. Is it on its way and is there a workaround currently?


I'm sure you can use the native RegExp class:

    (def pat (RegExp. "Some(.+)"))



No STM, that'll be interesting.

Ack no transients either! I know it's early but not gonna lie that one makes me sad. I love being able to write stupid fast list/map builder functions that bash inline but then return something nice and immutable.


Atoms are available now. Agents might come soon. Refs and Vars are questionable.


> Vars are questionable.

Really? Without vars you don't even have defn. Or do you just mean that vars in clojurescript don't implement IRef?


I think stuff like defn is just a normal js function and does not have the semantics of a clojure var.


IIRC just atoms are available right now.


No agents yet




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: