2024 Clojure 状态调研! 分享您的想法。

欢迎!请参阅 关于页面 了解更多关于如何使用本网站的信息。

+1 投票
编译器

目前 clojure 中像 IFnIDererf 等以接口的形式实现,但在 clojurescript 中是协议。
是否有计划解决这个问题不匹配的情况?

1 答案

+1 投票

已选择
 
最佳答案

Clojure 在协议存在之前就已经创建了其实现方式。ClojureScript 因为有很多先见之明,并具有不同的性能特征,而受益。

没有计划更改当前的实现方式,因为这会使同时维持性能和向后兼容性变得困难,而这些的核心接口有着众多外部用户和实现者。

还要提到界面分发更快,并且界面支持原语。这在一个特定环境很重要,但在基础设施层非常关键。
by
是的!尽管封装内联实现(记录/类型)时使用协议分发是界面分发,所以在这种情况下速度可以相同。
欢迎使用Clojure问答社区,您可以在这里提问并从Clojure社区的成员那里获得答案。
...