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

太好了。我现在正在深入了解这个问题。我刚刚打开了一个不同的问题来尝试处理行尾问题。 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

我认为这是值得的,因为这将给'官方' contrib 组件 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
...