大多数人都说即使是函数式编程也不太可能让你找到工作,你可以通过学习它成为一个更好的命令式/ OO程序员.
对我来说,主要是关于编写没有副作用的“非成员非朋友”功能.但我无法想出更多能够在命令式语言中有效应用函数式编程的例子,因为解决语言缺乏功能往往过于繁琐.
那么,在功能性编程的启发下,您实际应用于非功能语言的更多(特定)示例/技术是什么?
另一个我自己的经历
这个是非常抽象的,但由于大多数FP语言中缺乏“对象”,因此文化倾向于采用严格的数据结构设计.通常,在OOP语言中,因为在类中填充额外的变量太容易了,所以事情往往会很快陷入困境.尽管使用OCaml和Haskell的记录语法可以做到这一点,但这种方法在FP中有点不合适.
最佳答案 数据转换
根据我的经验,思考如何在功能上解决问题会让你更多地思考什么数据转化为什么 – 而不是需要改变什么状态以保持该死的东西运行……
对转换问题的思考使它们本身看起来不同 – 这导致了不同的,最可能更优雅的解决方案.
更新:在c中有< functional>标题,以及< algorithm>中的std::transform.