::Blog信息::
名称: 海螺子狂想
作者: hci
域名: blog.mitbbs.com/hci
站点: BBS 未名空间站

档案日期:20170501000000 ~ 20170601000000


2017-05-26 17:43:28

主题: Re: 为什么design pattern对FP language来说就是渣
所谓类型安全是不存在的需求。比如你说说什么叫“保证类型安全”?这程序不是人自己写的么,程序又不会自己变。写对了不就行了么。

关键在于写的时候,Clojure讲究bottom up, REPL driven。从一个小函数开始,写的时候不停用REPL试各种case,试好一个,把这些REPL操作直接复制到unit test文件里面,改成合适的格式,就成了unit test。这样从底层开始逐步把函数一层层垒起来,每一层都是些简单函数,都可以独立测试。

不存在”类型安全“的问题,因为”类型“这种东西是不存在的,存在的只有输入数据,函数,输出数据。

要保证一个函数的输入数据是正确的输入,这一般是在程序的边缘,API层面才需要的东西。实现这种检查,那有各种办法。以前Clojure有一些轮子来做这样的runtime check,当然对performance有点影响。现在有core.spec,可以检测数据,看是不是长成想要的样子,还可以根据spec来自动产生数据,用来做property based test,看一个函数是不是有正确的输入输出。这些可以在compile time搞。总之比较灵活,是可选的,根据需要来用,而不是语言层面强制性的到处都必须用的。


【 在 xyz14 (xyz14) 的大作中提到: 】
: 请问能讲讲dynamic typing这样保证类型安全?通过unit test?
: 了。




提示: 本博文来自于 Programming 版



BBS 未名空间站