This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2017-10-14
Channels
- # beginners (4)
- # boot (2)
- # cider (17)
- # clara (8)
- # cljs-dev (5)
- # clojure (16)
- # clojure-italy (14)
- # clojure-nl (1)
- # clojure-norway (1)
- # clojure-russia (1)
- # clojure-uk (4)
- # clojurescript (8)
- # data-science (19)
- # datomic (4)
- # ethereum (1)
- # events (1)
- # fulcro (15)
- # graphql (4)
- # hoplon (10)
- # jobs (1)
- # mount (1)
- # off-topic (15)
- # parinfer (4)
- # perun (1)
- # portkey (6)
- # re-frame (15)
- # reagent (10)
- # schema (1)
- # shadow-cljs (80)
- # specter (4)
- # test-check (35)
I’m currently trying to track down a weird edge case in the compiler, noticed a few of reader conditionals, eg. cljs.analyzer/resolve-var
@thheller After self-hosted ClojureScript was introduced, David went through an optimization effort, tweaking things to try to get compilation to run faster
@thheller expanding very slightly on mfikes' point ... being able to use identical?
instead of =
is an optimsation which exploits the underlying platform's treatment of strings.
In js
environments, strings are interned
whereas, on the JVM, they are not.
For example ... on a js
env this will test true, whereas on the JVM it is will test false:
(identical? "hello" (str "hell" "o"))
BTW, I'm yet to see someone point to a spec which says that string interning is guaranteed in javascript but, empirically, with all implementations doing it, it seems fairly solid at this point.