来自 Scala(和 Akka),我最近开始研究其他设计时考虑到分布式计算的语言,即 Erlang(以及一点点 Oz 和 Bloom)。Erlang 和 Oz 都是动态类型的,如果我没记错的话(会尝试查找链接),人们曾尝试向 Erlang 添加类型并设法键入其中的大部分内容,但无法成功强制系统使其适合最后一点?
Oz 虽然是一门研究语言,但对我来说当然很有趣,但它也是动态类型的。
Bloom 当前的实现是在 Ruby 中实现的,因此是动态类型的。
据我所知,Scala(我认为 Haskell,虽然我相信它最初是为了探索纯粹的惰性函数语言而不是分布式系统)是唯一一种静态类型并提供语言级抽象的语言(因为缺乏更好的术语)在分布式计算中。
我只是想知道动态类型是否比静态类型具有固有的优势,特别是在为编程分布式系统提供语言级别抽象的上下文中。