你是否真的“尝试过”(意味着在其中编程,而不仅仅是阅读有关它的文章)Erlang并决定在项目中不使用它?如果是这样,为什么?另外,如果您选择回到原来的语言,或者使用另一种函数式语言,如 F#、Haskell、Clojure、Scala 或其他语言,那么这也很重要,并说明原因。
我从 Erlang 回到 Haskell 来完成我的个人项目,因为 Haskell 令人惊叹的类型系统的简单优点。 Erlang 为您提供了大量的工具来处理出现问题的情况。 Haskell 为您提供了从一开始就防止出错的工具。
当使用具有强类型系统的语言时,每次编译时,您都可以有效地证明有关代码的自由定理。
你还可以从 Haskell 的类型类机制中得到一堆重载糖,但这对我来说很大程度上是次要的——即使它确实允许我表达一些在 Erlang 中非常冗长或不惯用且无法使用的抽象(例如 Haskell 的类别附加)。
我喜欢 Erlang,喜欢它的通道和它轻松的可扩展性。当我需要这些东西时我就会转向它。 Haskell 不是万能药。我放弃了对空间消耗更好的操作理解。我放弃了神奇的一次性垃圾收集器。我放弃了 OTP 模式和所有那些轻松的可扩展性。
但我很难放弃安全毯,正如人们常说的,在 Haskell 中,如果它进行类型检查,它可能是正确的。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)