Fork me on GitHub
#cljs-dev
<
2017-09-08
>
juhoteperi14:09:34

Huh, this inferrred extern problem is strange: https://dev.clojure.org/jira/browse/CLJS-2347

juhoteperi14:09:04

I haven't been able to reproduce it without boot-cljs, but if I provide extern with line var COMPILED; I get the same exception with just Cljs compiler

kommen13:09:41

I also wasn’t able to reproduce this with a reduced test case

kommen13:09:10

and hadn’t had time to look into this more yet. I was wondering if this var COMPILED; output is new since the latest clojurescript version

kommen13:09:23

as blickly noted in the closure issue, the closure compiler hasn’t really changed in that area

juhoteperi13:09:11

Someone mentioned on Github issues that latest snapshot fixes this

juhoteperi13:09:16

Haven't yet had time to test myself

kommen13:09:41

maybe I can try it later

john16:09:10

looks like the latest alpha 20's ## reader breaks CLJS https://groups.google.com/d/msg/clojure/IB2CaORBMnM/10gbiiHUDAAJ

anmonteiro16:09:07

@john probably until tools.reader gets updated and released

favila16:09:35

Anyone know if Infinity, NaN etc special symbols will stop working without ## reader?

Alex Miller (Clojure team)17:09:34

that functionality was always speculative (imo should not have been in tools.reader)

bronsa20:09:11

@alexmiller agreed that it shouldn't have

bronsa20:09:27

mistakes from when I was younger :)

dnolen16:09:01

@john I don’t really understand that report, since it doesn’t demonstrate how to reproduce

favila16:09:04

@dnolen I imagine (def x [NaN]) would do it?

favila16:09:16

or a macro in clj space could emit a non-finite double value

john16:09:45

Yeah, the report is fairly lacking

dnolen17:09:43

@dpsutton that also isn’t telling me anything interesting 🙂

dnolen17:09:43

oh ok, I guess the original report was probably saying [NaN NaN] is now maybe problematic.

dnolen17:09:06

but [js/NaN js/NaN] will probably work

Alex Miller (Clojure team)17:09:11

there was an older patch on the CLJ-1074 ticket that speculatively introduced new special symbols Inf, -Inf, NaN. That was speculatively implemented in tools.reader, so probably worked in CLJS.

dominicm18:09:54

I didn't understand why this patch was rejected based on the comments. Is there somewhere for me to learn?

Alex Miller (Clojure team)18:09:41

you mean the older patch on CLJ-1074?

dominicm19:09:18

I didn't understand what would break

Alex Miller (Clojure team)19:09:13

I don’t think there was anything broken with it, just Rich decided it was better not to create any more “special” symbol values. The only three that exist in Clojure now are true, false, and nil.

dnolen17:09:17

based on what @alexmiller has said this sounds like a bug in tools.reader

Alex Miller (Clojure team)17:09:44

The approach ultimately implemented for CLJ-1074 was to introduce new dispatch character and to use ##Inf, ##-Inf, ##NaN

Alex Miller (Clojure team)17:09:08

for portability, I’d say CLJS should use those (and NOT use Inf, -Inf, NaN)

dnolen17:09:17

absolutely

dpsutton17:09:56

didn't mean to clutter. thought that patch might be relevant is all 🙂