我慢慢爱上了Erlang,只有一个大的大问题。

我非常喜欢Standart ML和ocaml等语言,因为它们具有强大的静态类型检查功能。

有没有一种很好的方法来在erlang中引入某种静态类型检查。我正在查看-type-spec批注。

有人有不错的解决方案吗?

最佳答案

我去过那儿!我爱OCaml和Erlang并经常使用。

当我开始使用Erlang时,我已经拥有OCaml多年的经验。我花了几周的时间来适应编译器中没有静态类型检查器这一事实。但是在那之后,痛苦完全消失了。

在某种程度上,不使用类型检查器是值得进行的练习。对我来说,这是启发性的经验,确实使我成为了一个更好的程序员。

但是,有一个针对Erlang的外部静态类型检查器,称为Dializer。我觉得这很有用。它的问题是您需要单独调用它,而且速度很慢。偶尔运行一次(例如在提交代码之前或作为自动化构建的一部分)运行效果很好。我从来没有尝试过在每次编译后运行它,因为要等到它完成会太分心。

08-25 18:32