欢迎!有关如何使用此服务的更多信息,请参阅关于页面。
ClojureScript有{{uuid}}和{{random-uuid}}函数。在这些函数可用的情况下,ClojureScript更加方便,我认为这些函数对Clojure来说也非常有用,可以提高代码的可移植性。对这个补丁有兴趣吗?
评论由:wilkerlucio发表
(链接:~alexmiller) 我理解使其完全兼容会更好。但说实话,作为一名编写大量CLJC的用户,如果我们只有uuid和random-uuid(尤其是后者),就会解决我99%的UUID需求,我想对大多数人来说也是如此。我们是否可以先添加那些对所有人都有益的,而将详细介绍UUID的功能放在一个单独的问题票据中?
uuid
random-uuid
评论者:alexmiller
做这个的主要原因可能是可移植性。最合理的做法是生成 java.util.UUID。这与 ClojureScript 中的操作是一致的吗?也就是说,创建和 使用 uuid 的相同代码是否可以在两个平台上都工作?如果不能,那么这样做可能没有很好的理由。
评论者:[email protected]
最合理的做法是生成 java.util.UUID——这与 ClojureScript 中的操作是一致的吗?
ClojureScript 定义了自己的 UUID 类型,因为在 JavaScript 中没有这样的类型。链接。我不太明白你说的“一致”是什么意思。
也就是说,创建和使用的 uuid 的相同代码是否可以在两个平台上工作?
CLJS UUID 不支持 Java UUID 的所有方法,但重要的是有的(等价性、从字符串构造、将字符串打印出来)并且这足以在处理 uuid 时显著提高可移植性。
评论者:bronsa
Clojure 和 ClojureScript 都有带标签的字面量 uuid,这应该足够进行互操作。
我知道这一点,只是想知道是否有任何在 uuid 上可以调用的方法需要便携的等效函数,比如 链接 中的内容。
我的主要观点可能是:与其只考虑uuid/random-uuid函数,让我们考虑问题是:我们如何在Clojure/ClojureScript中添加可移植的UUID支持?这是一项更多的工作,但在我个人看来更有价值。
所以也希望能考虑以下内容(有些已经存在,但可能没有经过便携性测试)- 构建- 打印 - 打印,pr,美化打印- 读取- 哈希码- 位与字之间的转换- 字符串与字之间的转换- 提取组件
然后我认为考虑这些应该在核心还是在data.uuid等中是值得考虑的。
我认为最好在设计页面上工作,而不是在这里(这个票据只是更大问题的一个单位)。也许http://dev.clojure.org/pages/viewpage.action?pageId=950382能提供一些指导。