2024 年 Clojure 状态调查 中分享您的想法!

欢迎!请查看 关于 页面以了解更多关于如何工作的信息。

0
core.match

core.match clojurescript 应该是自宿主兼容的

9 答案

0

评论者:viebel

基本上我所做的是从 https://github.com/clojure/core.match/blob/master/src/main/clojure/clojure/core/match.clj

重命名为 match.cljc 并为 :cljs 分支创建一个分支。

补丁已附上

0

评论者:alexmiller

请注意,目前我们的自动化 CI 构建箱无法构建或发布包含 cljc 文件的工程。我正积极修复这个问题,但在它完成之前,这个问题无法推进。(修复之后,我会很高兴这样做。)

0

评论者:viebel

无论如何,我很乐意听到对我在补丁上的反馈。
这是一堆处理 cljs 和 clojure 类型之间差异的代码。

0

评论者:viebel

既然 cljc 已经完全支持,有人能看看这个补丁吗?Alex?David?

0

评论者:alexmiller

另一个问题是,我们是否想要将 Clojure 1.7 作为 core.match 的依赖项,这意味着将不支持许多旧版本。我认为我可以接受这一点,但想听听更多来自社区的意见。

0

评论者:cgrand

如果这个补丁的目标仅仅是让 {{cljs.core.match}} 与自宿主兼容(而不是同时统一 {{cljs.core.match}} 和 {{clojure.core.match}}),那么我认为应该有一些对 clojure 的引用不应该存在。我也认为在 clojure 编译的 clojurescript 中运行时,{{backtrack-expr}} 和 {{FailureNode}} 会生成 clojure 而不是 clojurescript 代码。

0

评论者:alexmiller

(链接:~viebel) 请查看 Christophe 的评论。如果其他人能让它达到在 Clojure,ClojureScript 和自宿主 ClojureScript 上都能工作的补丁阶段,我将很乐意帮忙确保其作为版本发布。

0
参考:[https://clojure.atlassian.net/browse/MATCH-116](https://clojure.atlassian.net/browse/MATCH-116)(由 viebel 报告)
...