函数式编程面试题(水平有限,仅供参考)

Posted 边城道馆

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了函数式编程面试题(水平有限,仅供参考)相关的知识,希望对你有一定的参考价值。

  已知一切都是函数,而函数是A -> B, (读作从A 到 B的映射)。试发散推论函数式编程的性质。


无知乎,无百度,如出现纰漏或理解不深的地方,正是要留待日后对比提升的。


  1. A , B, -> 是函数,因为一切都是函数。NICE,就是喜欢这种递的赶脚

  2. ->, 映射 函数是各种函数编程区别的关键点:这是一个描述变化(计算)的函数,在数学理论上是瞬态的,而在实际工程中,受到空间和时间的限制。在实际工程中,runtime遇到->,一般有即时计算A或者惰性计算A的区别。

  3. A->B,  A取(A1 -> A2), B取 (B1 -> B2) 可得 A->B 等价 (A1->A2) -> (B1 -> B2), 定义->为右结合,故等价: A1->(A2->(B1->B2)), 可得柯里化,可得高阶函数。吾谓之无极生太极,太极生阴阳,至无穷。

  4. 既生无穷,故须定四象,分八卦,框定万物。于是haskell引入类型(人就是喜欢类型,喜欢归类,不管是五行还是十二生肖,你属鸡的就会早上做鸡叫),两类函数:值构造子(值 -> 固定类型)以及类型构造子(类型A -> 泛化类型B的持A特化类型),以及类型类(类型A -> 具有一组函数的类型A),最后从类型类引入范畴论中的Monad\Applicator\Functor作为通用类型类。

  5. 无极太极两仪为天地伊始即有的运行规律,四象八卦是人们为了认识、应用变化规律而界定的工具。最终从这万般变化,万般界定归类中,回来,从无穷(Monad\MonadTransfer...)到八卦(Maybe\Map\Set)到四象(Nothing,Just everything\1,2,3,...)到两极(A->B)到太极(函数)到无极。


以上是关于函数式编程面试题(水平有限,仅供参考)的主要内容,如果未能解决你的问题,请参考以下文章

每日一题谈谈你对函数式编程的理解?

用一道坑人的面试题来谈谈函数式编程

编程范式:函数式编程

玩转 JavaScript 面试:何为函数式编程?

C# 函数式编程:LINQ

面试官:说说你对函数式编程的理解?优缺点?