请分享您的想法在 2024 Clojure现状调查!

欢迎!请参阅关于页面以获取更多关于该功能的信息。

+2票数
Clojure

`
报告者:wolfe.a.jason,2009年2月4日

请描述这个功能/更改。

将“keyset”添加到Clojure中;使APersistentMap的.keySet返回一个
IPersistentSet

这在小组中讨论过吗?如果是这样,请提供讨论链接:
讨论

http://groups.google.com/group/clojure/browse_thread/thread/66e708e477ae992f/ff3d8d588068b60e?hl=en#ff3d8d588068b60e


附上一个补丁。一些备注

我选择添加一个“keyset”函数,而不是更改现有的“keys”,
以避免破坏任何东西。

相应的 RT.keyset 函数只是对参数调用 .keySet。
我希望当传递一个(非Clojure)java.util.Map时“keyset”返回一个 IPersistentSet,但
由于上述论坛中提到的相同限制(Map接口不支持getKey()或entryAt()),这似乎在
亚线性时间内做不到 --
再次假设,“get”应该返回集合中的实际(相同的)键,而不仅仅是.equal键。
然后,我更改了APersistentMap的.keySet实现,以基本复制APersistentSet。
另一个更简洁的备选方案是扩展APersistentSet并重写.get方法,但这对

我来说有点紧张(因为如果APersistentSet更改这可能会破坏)。
无论如何,这是我为Clojure Java这边写的第一个补丁,我对约定和美学
还不够稳固,所以评论/问题/批评/修订请求都非常欢迎。
请求

jira
登录注册以添加评论。
登录注册以回答此问题。

`

5个答案

0票数

评论者:importer

richhickey 说:更新工单(#8、#19、#30、#31、#126、#17、#42、#47、#50、#61、#64、#69、#71、#77、#79、#84、#87、#89、#96、#99、#103、#107、#112、#113、#114、#115、#118、#119、#121、#122、#124)

0票数

评论者:importer

oranenj 说:[文件链接:dKgE6mw3Gr3O2PeJe5afGb]

0票数

评论者:stu

文件格式不正确

0票数
参考:https://clojure.atlassian.net/browse/CLJ-69(由 alex+import 报告)
...