问题标签 [functional-programming]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
3897 浏览

programming-languages - 什么是“全函数式编程”?

维基百科有这样的说法:

全函数式编程(也称为强函数式编程,与普通或弱函数式编程相比)是一种编程范式,它将程序的范围限制在可证明终止的程序范围内。

这些限制意味着整个函数式编程不是图灵完备的。然而,可以使用的算法集仍然是巨大的。例如,任何已经为其计算了渐近上界的算法都可以通过使用上限作为额外参数来简单地转换为可证明终止的函数,该额外参数在每次迭代或递归时递减。

还有一篇关于Total Functional Programming的论文的 Lambda The Ultimate Post 。

直到上周我在邮件列表中才发现这一点。

是否有更多您知道的资源、参考资料或任何示例实现?

0 投票
8 回答
1255 浏览

functional-programming - Occam-pi 是学习 LEGO MINDSTORMS & Surveyor Corporation SRV-1 编程的好语言吗?

Occam-pi 是学习为编程新手编程 LEGO MINDSTORMS & Surveyor Corporation SRV-1 机器人的好语言吗?是否有任何开源项目使用相同的 - 来阅读源代码。occam-pi 的网址:- http://www.transterpreter.org/

0 投票
10 回答
30308 浏览

c++ - 如何在 C++ 中进行柯里化?

什么是咖喱?

如何在 C++ 中进行柯里化?

请解释 STL 容器中的活页夹?

0 投票
12 回答
24835 浏览

ruby - Is Ruby a functional language?

Wikipedia says Ruby is a functional language, but I'm not convinced. Why or why not?

0 投票
8 回答
2290 浏览

functional-programming - 高度可变域中的不可变功能对象

我目前正在利用 Scala 的业余时间学习函数式编程,并且我有一个空闲的新手问题。

在执行诸如计算 Haar 小波变换之类的操作时,我可以看到拥有不可变对象的优雅——即当由对象表示的数据本身没有改变时。

但是我看到一个博客,其中有人在演示不变性时以一个小游戏为例。如果一个生物对象受到伤害,它不会改变它的状态——它返回一个具有新生命值和一个新的“仇恨 X”标志的新生物对象。但如果我们要设计类似 MMORPG 的东西,魔兽世界会这样说。一百名玩家在战场上……可能有数千种攻击和增益/减益法术效果以不同的方式影响他们。是否仍然可以用完全不可变的对象来设计系统?在我看来,每个“滴答”都会有一大群新实例。为了获得当前有效的对象实例,所有客户端都必须不断地通过某种中央“游戏世界”对象,或者?

函数式编程是否适用于此,或者这是“最好的工作的最佳工具,在这里可能不是一成不变的”?

0 投票
8 回答
13549 浏览

c# - C# - IEnumerable 到分隔字符串

IEnumerable<string>将 a 转换为分隔字符串的函数式编程方法是什么?我知道我可以使用循环,但我正试图围绕函数式编程。

这是我的例子:

.. 或者我可以在第一个 var 分配中执行此操作(将每个结果附加到前一个结果)?

0 投票
10 回答
4931 浏览

functional-programming - 是否会有一种函数式语言为 Java 社区做 F# 为 .NET 社区做的事情?

是否会有一种函数式语言为 Java 社区做 F# 为 .NET 社区做的事情?

JVM 有哪些函数式编程语言可用或正在开发中?

0 投票
9 回答
5285 浏览

f# - 函数式编程和多核架构

我在某处读到函数式编程适合利用计算中的多核趋势。我真的不明白。它与 lambda 演算和冯诺依曼架构有关吗?

0 投票
4 回答
3622 浏览

java - 如何从 Java 过渡到 Clojure?

在发现Clojure之后,我花了几天时间沉浸其中。

哪些项目类型适合于 Java 而不是 Clojure,反之亦然,以及它们的组合?

在 Clojure 之前您从未尝试过的程序示例有哪些?

0 投票
2 回答
1364 浏览

vb.net - 枚举参数

我希望在 vb.net 中找到一种方法来做到这一点:

假设您有函数调用 getPaint(Color)。您希望将调用限制为 (red,green,yellow) 的参数值。当他们输入该参数时,会为用户提供可用选项,例如布尔参数的功能。

有任何想法吗?