Tag: 函数式编程

什么是“Lambda提升”?

我经历了Erlang编译器源代码时遇到了这个问题。 我真的没有得到它。 (去图)),考虑到我刚刚意识到5分钟前有这样的事情)。 请原谅我先问,而不先试着去了解它存在的原因。 有关于它的维基百科文章 ,但它是相当神秘的。

UML可以用来模拟function程序吗?

更具体地说,你如何build立一个function程序的模型,或者使用函数式(没有类)使用图来开发,而不是使用文本表示,是否有可能,有人可以指引我到最近的应用程序来做到这一点(开放源代码,免费,如啤酒,如果你愿意)

有没有可用于任何lambda的无操作(NOP)的方法引用?

这可能听起来像一个奇怪的问题,但是有没有办法引用Java 8中的Lambda的标准no-op(aka null操作,null-pattern方法,no-operation,do-nothing方法)方法。 目前,我有一个方法,采取一个,例如, void foo(Consumer<Object>) ,我想给它一个无操作,我必须声明: foo(new Consumer<Object>() { public void accept(Object o) { // do nothing } } 我希望能够做到这样的事情: foo(Object::null) 代替。 有这样的东西存在吗? 不知道如何使用多参数方法 – 也许这是Java中的lambdaexpression式的一个缺陷。

装饰者模式的function相当于?

什么是装饰devise模式的等价function编程? 例如,你将如何在function风格中编写这个特定的例子 ?

有(a – > b) – > b`相当于有一个`a`?

在一个纯粹的函数式语言中,你可以用一个值做的唯一事情就是对它应用一个函数。 换句话说,如果你想用typesa的值做任何有趣的事情,你需要一个types为f :: a -> b的函数,然后应用它。 如果有人用(a -> b) -> b给你(flip apply) a (a -> b) -> b ,那么是否适合replace? 你会用types(a -> b) -> b调用什么? 看来,这似乎是一个a的替身,我很想把它称为代理,或从http://www.thesaurus.com/browse/proxy 。

不纯的function语言OCaml的“let rec”的原因是什么?

在“ Real World OCaml ”一书中,作者提出了为什么OCaml使用let rec来定义recursion函数。 OCaml区分非recursion定义(使用let)和recursion定义(使用let rec)主要是出于技术原因:types推断algorithm需要知道何时一组函数定义是相互recursion的,并且由于不适用于像Haskell这样的纯粹语言,这些都必须由程序员明确标记。 什么是强制执行let rec技术上的原因,而纯粹的function语言呢?

斯卡拉与F#问题:他们如何统一面向对象和计划范式?

Scala和F#采取的统一面向对象和面向对象的方法之间的主要区别是什么? 编辑 每种方法的优点和缺点是什么? 如果,尽pipe支持子types,F#可以推断函数参数的types,那么为什么不能Scala?

将选项types列表缩减为仅非元素的最佳方式?

我意外地从一个选项列表到一个只包含一些元素的列表,有点麻烦。 我最初的尝试是: let ga = List.filter (fun xx -> match xx with | Some(g) -> true | None -> false) gao 但是,当然,这个结果types仍然是一个选项列表。 我不知道如何使用List.map来压缩这个,因为你必须处理匹配语句中的所有情况。 我有一个丑陋的解决scheme,但我想知道是否有更好的东西。 丑陋: let rec gOptRemove gdec gacc = match gdec with | head :: tail -> match head with | Some(a) -> gOptRemove tail (a :: gacc) | None -> gOptRemove tail […]

为什么在Clojure中使用Maybe / Option没有这么普遍?

为什么Clojure尽pipe如此强调function范例,却不使用Maybe / Option monad来表示可选值? Scala是一个我经常使用的函数式编程语言,它的使用相当普遍。

如果Java的人去斯卡拉,C#去F#,Ruby的人去哪里function涅??

我知道很多Java开发人员已经开始关注Scala,因为它运行在JVM上,许多Microsoft世界的人都在关注F#,但是Ruby作为一个自然的function性inheritance者有什么用处? 在一个纯粹的FP意义上,Ruby并不缺less任何东西,反而有些人可能会说。 一个函数式语言迫使程序员不要使用全局variables和其他习语(尽pipe可以在函数式语言中使用全局variables)