我在这里看到很多关于函数式语言的讨论。为什么你要使用传统语言而不是传统语言呢?他们在哪些方面做得更好?他们更不擅长什么?理想的函数式编程应用程序是什么?
当前回答
大多数应用程序都可以用[此处插入您最喜欢的语言、范例等]来解决。
尽管如此,不同的工具可以用来解决不同的问题。函数只是允许另一种更高层次的抽象,当正确使用时,它允许我们更有效地完成工作。
其他回答
即使您从未专业地使用过函数式语言,了解函数式编程也会使您成为更好的开发人员。它会给你一个新的视角来看待你的代码和编程。
我认为没有理由不去学习它。
我认为能够很好地混合函数式和命令式风格的语言是最有趣的,也是最有可能成功的。
我不认为函数式语言能解决任何问题,这只是管理层试图推销的一种炒作,记住唯一的事实:
没有灵丹妙药。
其余的都是胡扯,他们还说OO会解决我们的问题,Web服务会解决我们的问题,Xml会解决我们的问题,但最后上面的真理适用了,一切都失败了。而且,20年后,谁说我们还会使用二进制计算机呢?为什么不是量子计算机呢?没有人能预测未来,至少在这个星球上不能。(这是第二条真理)
为什么函数式编程很重要
在我看来,那些从未在本科阶段学习过Lisp或Scheme的人现在正在发现它。与这个领域的许多事情一样,有一种炒作和创造高期望的倾向……
一切都会过去的。
函数式编程很棒。然而,它不会统治世界。C、c++、Java、c#等语言仍将存在。
我认为这会带来更多的跨语言能力——例如,用函数式语言实现一些东西,然后用其他语言访问这些东西。
我不认为大多数现实的人会认为函数式编程会流行起来(成为像OO那样的主要范式)。毕竟,大多数业务问题都不是漂亮的数学问题,而是用来移动数据并以各种方式显示它们的繁琐的命令式规则,这意味着它不适合纯函数式编程范式(monad的学习曲线远远超过OO)。
对了,函数式编程让编程变得有趣。它会让你欣赏宇宙中潜在数学的简洁表达所蕴含的永恒之美。人们说学习函数式编程会让你成为更好的程序员。当然,这是非常主观的。我个人认为这也不完全正确。
它让你成为一个更有感情的人。