2024 Clojure状态调查中分享您的想法!

欢迎!请参阅关于页面以获取有关这一工作的更多详细信息。

+4
Clojure
编辑

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

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

你使用spec来获得像静态类型一样的好处吗?有什么限制?

编辑:将此重写为问题,并将我的想法移至gist...

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

2 答案

+1

你能概括一下您在这里提出的问题是什么吗?

我读完了整篇文章,但感觉它更像是一系列观察,而不是这里可以回答的问题。


编辑
感谢您花时间阅读。

我对探索spec检查在提供静态类型部分优点中的价值和局限性感兴趣。

也许我的方法太过宽泛。

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

编辑:我已经更改了标题。
和Quora和StackOverflow一样,这是一个提问和获取答案的地方——但是我真的无法弄清楚你提出了什么问题。我认为如果你能编辑它,使其更专注于你要问的问题,这样人们就会清楚他们回答的是什么,这会有所帮助。

我认为clojure.spec不能与静态类型相提并论,因此即使新的标题措辞为疑问句,我也不知道该怎么回答(我们自clojure.spec的第一个alpha版本以来一直是它的重度用户,时间是1.9.0周期早期)。
我已经修改并将我的想法移动到了一个gist...

https://gist.github.com/olivergeorge/9ae12592b49f8da4d911650b793dcbda
不错。问题现在很明确了。我很想知道你会得到什么答案!
by
我认为摘要应该链接到问题中。
by
完成了。谢谢。
0
by

由于你的问题还没有得到答案,我在这里放上了我的最近博客文章链接

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

正如你在文章中看到的,它最初是作为Quora上一个关于Spec更开放式问题的回答而编写的。

...