Functional programming 核电站中的函数式编程?

Functional programming 核电站中的函数式编程?,functional-programming,Functional Programming,读完后,我想知道在任务关键型行业使用Haskell(或其他函数式编程语言)是否是一个好主意 除了Erlang之外,大多数语言都遵循命令式/契约式设计范式(Ada、Eiffel、C++) 但是功能性的呢 生成的代码将易于维护、稳定,并且许多潜在的bug可以在编译时通过严格的类型系统消除。 还是懒惰的评估比有用的更危险?还有其他安全缺陷吗?我想你可以。该语言似乎非常适合这种情况,假设您足够信任编译器,可以在任务关键的情况下使用它 请记住,在任务关键的情况下,不仅您的代码受到审查,所有其他组件也受到审

读完后,我想知道在任务关键型行业使用Haskell(或其他函数式编程语言)是否是一个好主意

除了Erlang之外,大多数语言都遵循命令式/契约式设计范式(Ada、Eiffel、C++)

但是功能性的呢

生成的代码将易于维护、稳定,并且许多潜在的bug可以在编译时通过严格的类型系统消除。
还是懒惰的评估比有用的更危险?还有其他安全缺陷吗?

我想你可以。该语言似乎非常适合这种情况,假设您足够信任编译器,可以在任务关键的情况下使用它

请记住,在任务关键的情况下,不仅您的代码受到审查,所有其他组件也受到审查。这包括编译器(Haskell编译器不是最容易进行代码审查的编译器)、运行软件的适当认证硬件、编译代码的适当硬件、引导编译代码的编译器编译的硬件、,地狱-甚至连电线都连接到电网和插座中的电压变化频率

如果您对任务关键型软件质量感兴趣,我建议您看看。他们非常严格和正式,但这些家伙在太空中投入了数百万美元,希望它能在相当恶劣的条件下生存,并能飞到火星或任何地方,然后自动运行,并将一些火星人的漂亮照片送回地球

所以,好了:Haskell适用于任务关键型情况,但在那里引导其使用将是一个昂贵的过程