core.match

core.match clojurescript should be self-host compatible

Details

  • Type: Enhancement Enhancement
  • Status: Open Open
  • Priority: Major Major
  • Resolution: Unresolved
  • Affects Version/s: None
  • Fix Version/s: None
  • Component/s: None
  • Labels:

Description

core.match clojurescript should be self-host compatible

Activity

Hide
Yehonathan Sharvit added a comment -

Basically what I did was to take `match.clj` from https://github.com/clojure/core.match/blob/master/src/main/clojure/clojure/core/match.clj

renamed in to `match.cljc` and make a branch for `:cljs`.

Patch is attached

Show
Yehonathan Sharvit added a comment - Basically what I did was to take `match.clj` from https://github.com/clojure/core.match/blob/master/src/main/clojure/clojure/core/match.clj renamed in to `match.cljc` and make a branch for `:cljs`. Patch is attached
Hide
Alex Miller added a comment -

Please note that at the moment our automated CI build box is unable to build or release projects containing cljc files. I am actively working on fixing that but until it is, this can't move forward. (And after it's fixed, I would be happy to do so.)

Show
Alex Miller added a comment - Please note that at the moment our automated CI build box is unable to build or release projects containing cljc files. I am actively working on fixing that but until it is, this can't move forward. (And after it's fixed, I would be happy to do so.)
Hide
Yehonathan Sharvit added a comment -

Anyway, I'd be happy to get feedback on my patch.
It's a lot of code dealing with the differences between cljs and clojure types.

Show
Yehonathan Sharvit added a comment - Anyway, I'd be happy to get feedback on my patch. It's a lot of code dealing with the differences between cljs and clojure types.
Hide
Yehonathan Sharvit added a comment -

Now that cljc is fully supported, could someone take a look at this patch? Alex? David?

Show
Yehonathan Sharvit added a comment - Now that cljc is fully supported, could someone take a look at this patch? Alex? David?
Hide
Alex Miller added a comment -

The other question is whether we want to require Clojure 1.7 as a dependency for core.match, which means removing a lot of older versions from support. I think I'm ok with that, but would like to hear more from community too.

Show
Alex Miller added a comment - The other question is whether we want to require Clojure 1.7 as a dependency for core.match, which means removing a lot of older versions from support. I think I'm ok with that, but would like to hear more from community too.
Hide
Christophe Grand added a comment -

If the goal of this patch is only to make cljs.core.match self-host compatible (and not to also unify cljs.core.match and clojure.core.match) then I think there are several references to clojure that shouldn't be there and I also think that backtrack-expr and FailureNode emit clojure code instead of clojurescript code when run in clojure-compiled clojurescript.

Show
Christophe Grand added a comment - If the goal of this patch is only to make cljs.core.match self-host compatible (and not to also unify cljs.core.match and clojure.core.match) then I think there are several references to clojure that shouldn't be there and I also think that backtrack-expr and FailureNode emit clojure code instead of clojurescript code when run in clojure-compiled clojurescript.
Hide
Alex Miller added a comment -

Yehonathan Sharvit please see Christophe's comments. I'd be happy to help shepherd this into a release if others could get to a point where it has a patch that works on Clojure, ClojureScript, and self-hosted ClojureScript.

Show
Alex Miller added a comment - Yehonathan Sharvit please see Christophe's comments. I'd be happy to help shepherd this into a release if others could get to a point where it has a patch that works on Clojure, ClojureScript, and self-hosted ClojureScript.

People

Vote (12)
Watch (3)

Dates

  • Created:
    Updated: