2024 年 Clojure 问卷调查中分享你的想法!

欢迎!请参阅关于页面了解更多关于这个平台的信息。

+4
Clojure
编辑

在静态语言中,将类型声明视为一个测试,该测试可以识别潜在的不兼容代码路径。例如,传入的数据与代码不兼容。

在静态语言中,由于将测试声明为与代码内联,因此编写测试的工作量减少,并且推断允许注释渗透——虽然如此,但是 Clojure 的 spec 功能似乎也可以实现类似的结果。

你使用 spec 获得静态类型的好处吗?有什么局限性?

编辑:我将此重新作为问题提出,并将我的想法移到 gist 中...

https://gist.github.com/olivergeorge/9ae12592b49f8da4d911650b793dcbda

2 个答案

+1

你能总结一下你实际上在这里提出的问题吗?

我读完整篇文章,但这似乎更多的是一系列观察,而不是这里可以回答的问题。


编辑
感谢您抽出时间阅读。

我想探讨规范检查在提供静态类型一些好处时的价值和局限性。

也许我的方法过于开放。

这是不是一个鼓励讨论成功技术和应避免的事情的地方?

编辑:我已经改变了标题。
就像Quora和StackOverflow一样,这是一个提问和获取答案的地方——但我实在不知道你在问什么问题。我认为如果你能将其编辑得更集中在你要问的问题上,这样人们就知道如何回答,那会有所帮助。

在我看来,clojure.spec与静态类型不可比,所以即使新的标题措辞为一个问题,我也不知道该如何作为答案(并且我们自从clojure.spec的第一批alpha构建以来,一直是它的重度用户)。
我已经修改并将我的想法移到了一个工作区...

https://gist.github.com/olivergeorge/9ae12592b49f8da4d911650b793dcbda
太好了。问题现在清晰了。我很想看看你将得到什么答案!
我认为应该在该问题中链接精华部分。
完成。谢谢。
0

由于您的问题还没有得到任何答案,我将在此放置我最近的博客文章链接

https://corfield.org/blog/2019/09/13/using-spec/

正如您从文章中看到的,它最初是作为Quora上关于Spec的一个更开放的问题的回答所写的。

...