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

欢迎!请参见关于页面了解如何使用此工具的更多信息。

0
data.priority-map

随着Clojure 1.7及读取条件语句的即将发布,是否有兴趣增加ClojureScript支持?目前已有https://github.com/tailrecursion/cljs-priority-map上的迁移。Alan Dipert可能会将其捐赠给Clojure核心,否则我会有兴趣进行迁移工作。

10 个回答

0

评论者:markengelberg

我同意这是有价值的,基于现有端口可能有助于大量工作。您是否打算带头询问Alan Dipert,并找出如何高效使用读取条件语句合并两者的方法?

0

评论者:timvisher

我们对这个还感兴趣吗?

0

评论者:markengelberg

我仍然支持这个想法,但现在没有时间去做。

0

评论者:timvisher

太棒了。我现在正在深入研究这个问题。我刚刚打开了一个不同的issuse,尝试将行尾统一。http://dev.clojure.org/jira/browse/DPRIMAP-9

0

评论者:timvisher

关于Clojure版本支持,我们想做什么?如果我们满意地放弃支持1.7之前的版本,那么我就可以使用cljc来针对两个平台。如果我们希望保持对以前版本的支持,那么我必须采取不同的方法。

你的看法是什么?

0

评论者:markengelberg

我在早期的评论中说,“我认为这值得做”,这完全是由“cljc是现代Clojure库预期会做的事情”这种感觉驱动的。但我越想就越意识到,通过合并Clojure和Clojurescript版本,我们到底获得了什么好处,尤其是考虑到这段代码几乎完全关于实现Clojure和Clojurescript之间完全不同的协议和接口,因此很少有共同代码。由于代码共同性很小,不清楚相比两个单独的文件,合并到一个文件中的代码是否更容易维护或扩展。此外,自从创建以来,优先级映射几乎没有改变,未来可能也改变很少。

因此,我开始怀疑这值得付出努力和引入错误的风险,但如果你有兴趣探索这个问题,我认为cljc是可行的。

所以在你深入进去之前,让我问问你的看法:将两个文件合并成一个cljc文件的收益是什么?

0

评论者:timvisher

我认为这样做是有价值的,因为这将给Clojurescript提供“官方”的贡献支持。我主要对这个感兴趣,因为我需要在我正在参与的项目中实现优先级队列,并且我也想尝试cljc。所以这是一个学习练习,也是一个实际努力。

但说到这里,我对类型声明的不同感到非常惊讶。我曾假设可以使用#?替换一些类型,但实现却截然不同。我还没有决定我能统一多少,但希望是很多的。

所以不管你是否接受,我想要做这个练习。

我假设你上面所说的隐含着接受1.7作为最小支持版本吗?

0

评论者:markengelberg

是的,我接受至少支持版本1.7。

0

评论者:alexmiller

请注意,我们目前使用的Hudson CI系统(用于构建 contrib 项目)无法构建 cljc 项目。为了构建,需要一个 clojure-maven-plugin 的新版本,这个版本需要 Maven 3(某些插件需要),而我们正在使用的旧版Hudson不支持。

这在我的待办事项列表中排名较高,因为我们已经在为 test.check 打这场仗(而且不会太久,其他人也会需要这个问题)。但你可能想要等到我们解决了这个问题再进行。

可以手动构建和发布项目而不使用 CI 服务器(我已经为 test.cehck 做过这件事),但这并不简单。

0
参考:[链接](https://clojure.atlassian.net/browse/DPRIMAP-8)(由 [email protected] 报告)
...