Yes, clojurescript makes use of a previous experimental feature of tools.reader that allowed Infinity and -Infinity to be read as Double/POSITIVE_INFINITY and Double/NEGATIVE_INFINITY, without special casing how the compiler emitted infinity literals, as clojure previously printed them as "Infinity" and "-Infinity" which is the valid javascript code. Now that clojure has changed how infinities are printed, clojurescript broke and the compiler now explicitely has to handle how infinities are printed, rather than simply using the pr-str representation of numbers.

On 29/09/17 19:47, Stuart Halloway wrote:
And to maybe answer my own question, I guess it is https://github.com/clojure/clojurescript/blob/master/src/main/cljs/cljs/core.cljs#L988-L990.

On Fri, Sep 29, 2017 at 1:45 PM, Stuart Halloway <stuart.hallo...@gmail.com <mailto:stuart.hallo...@gmail.com>> wrote:

    To be clear: we can certainly cut a new release of CLJS, I just
    want to understand other options, if any.

    On Fri, Sep 29, 2017 at 1:38 PM, Stuart Halloway
    <stuart.hallo...@gmail.com <mailto:stuart.hallo...@gmail.com>> wrote:

        Hi Aleš, Mark,

        Thanks for the reports! It isn't clear to me how a change to
        tools.reader can fix a problem with the core hash function.
        Can somebody point me to the place in the Clojurescript code
        where this happens?

        Stu

        On Fri, Sep 29, 2017 at 11:13 AM, Aleš Roubíček
        <rar...@gmail.com <mailto:rar...@gmail.com>> wrote:

            The Cljs problem is easily solvable by referencing latest
            tools.reader:

            [org.clojure/clojurescript "1.9.908" :exclusions
            [org.clojure/tools.reader]] [org.clojure/tools.reader "1.1.0"]


            On Thursday, September 28, 2017 at 8:37:11 PM UTC+2,
            puzzler wrote:

                And to be clear, it doesn't only affect people who try
                to use ##Inf or ##NaN in their Clojurescript code. It
                affects all existing Clojurescript code, because
                running the Clojurescript compiler in a new version of
                Clojure causes all Clojurescript code to emit these ##
                characters directly into the javascript for its
                definition of the core hash function, which is
                nonsensical javascript.  So all Clojurescript code is
                broken by running the new release.

                On Thu, Sep 28, 2017 at 11:34 AM, Mark Engelberg
                <mark.en...@gmail.com> wrote:

                    On Thu, Sep 28, 2017 at 11:02 AM, Jeaye
                    <con...@jeaye.com> wrote:

                        This has been the only issue we've run into
                        with 1.9.0-beta1 ( ticket is here
                        https://dev.clojure.org/jira/browse/CLJS-2352
                        <https://dev.clojure.org/jira/browse/CLJS-2352>
                        ). On our back-end, all tests are good, but we
                        can't currently use beta1 (or alpha20) on the
                        front-end, since this issue causes CLJS to
                        choke. I'm hoping that a new version of CLJS
                        comes out before Clojure 1.9.0 so that people
                        don't get the false impression that the latest
                        of each is compatible with the other.

                        J


                    Agreed.  It is currently not possible to use
                    Clojure 1.9.0 later than alpha19 with
                    Clojurescript. Clojurescript as it currently
                    stands can't handle the new ## tags like ##Inf,
                    ##NaN.  Like a number of people, I got burned by
                    this when I tried to upgrade and spent some time
                    tracking it down, only to realize it was already a
                    known incompatibility. There will be a lot more
                    confused people if you release Clojure 1.9.0 prior
                    to releasing a new version of Clojurescript that
                    is compatible.


-- You received this message because you are subscribed to
            the Google
            Groups "Clojure" group.
            To post to this group, send email to
            clojure@googlegroups.com <mailto:clojure@googlegroups.com>
            Note that posts from new members are moderated - please be
            patient with your first post.
            To unsubscribe from this group, send email to
            clojure+unsubscr...@googlegroups.com
            <mailto:clojure%2bunsubscr...@googlegroups.com>
            For more options, visit this group at
            http://groups.google.com/group/clojure?hl=en
            <http://groups.google.com/group/clojure?hl=en>
            ---
            You received this message because you are subscribed to
            the Google Groups "Clojure" group.
            To unsubscribe from this group and stop receiving emails
            from it, send an email to
            clojure+unsubscr...@googlegroups.com
            <mailto:clojure+unsubscr...@googlegroups.com>.
            For more options, visit https://groups.google.com/d/optout
            <https://groups.google.com/d/optout>.




--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
---
You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com <mailto:clojure+unsubscr...@googlegroups.com>.
For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- You received this message because you are subscribed to the Google Groups "Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to