16得票3回答
为什么简单的for循环表达式只限于整数范围?

根据 F# 规范(参见 §6.5.7),简单的 for 循环由整数(即int,也称为int32或System.Int32)限制其上下限,例如:for i = start to stop do // do sth. 我想知道为什么这种类型的for循环迭代边界必须是int32,为什么不允许...

15得票7回答
函数式的Clojure和命令式的Groovy,哪个更易读?

好的,现在不能作弊。 真的,请花一两分钟尝试一下。 "positions"是做什么用的? 编辑:根据cgrand的建议进行了简化。(defn redux [[current next] flag] [(if flag current next) (inc next)]) (defn p...

15得票5回答
C是一种命令式编程语言还是声明式编程语言?

很难区分命令式编程和声明式编程的区别,有没有人可以用现实世界的术语解释一下两者之间的区别? 请澄清C语言是命令式还是声明式语言。

15得票4回答
何时使用命令式编程风格更合适?

从第二版《Scala编程》第98页底部: 平衡态度的Scala程序员 更喜欢`val`、不可变对象和没有副作用的方法。首选它们。当您有特定需求和理由时,请使用`var`、可变对象和具有副作用的方法。 在前面的页面上已经解释了为什么更喜欢`val`、不可变对象和没有副作用的方法,因此这句话...

13得票7回答
将Java中的命令式编程转换为函数式编程(一个游戏)

我正在学习更多有关Java 8及其函数式能力的知识,希望可以进行更多练习。比如说,我有以下命令式代码,用于将圆形封装在屏幕界限内:if (circle.getPosition().getX() > width + circle.getRadius()){ circle.getPo...

11得票3回答
用表格查找替换函数

我一直在观看这个与Brian Beckman有关的MSDN视频,我想更好地理解他所说的内容: 每个命令式程序员都会经历这样一个学习阶段,即函数可以用表查找替代。 作为一个没有上过大学的C#程序员,也许我错过了其他人都学会的东西。 Brian的意思是什么呢? 函数可以被表查找替代。 这...

11得票1回答
使用Struct库的快速命令式指针(静态、取消装箱等)

我对在Haskell中实现命令式语言的项目使用更高效指针感兴趣。已经有一个库:Struct可以使用。有一篇博客文章和简要文档介绍了这个库。 问题在于,只有一个相当复杂的Link-Cut Tree示例。对于像我这样不经常使用Haskell的人来说,处理缺乏文档的代码、模板Haskell等是相当...

10得票4回答
OCaml中用于退出循环的惯用异常

在OCaml中,可以通过引发异常来提前退出命令式循环。 虽然在OCaml中使用命令式循环不是惯用的方式,但我想知道最惯用的方法是什么,以模拟具有提前退出功能的命令式循环(如可能的性能等方面)。 例如,一个旧的OCaml FAQ 提到了异常Exit: Exit:用于跳出循环或函数。 ...

9得票9回答
函数式编程是命令式编程的一个子集吗?

函数式编程的主要特点之一是使用无副作用的函数。然而,这也可以在命令式语言中实现。递归和Lambda函数也是如此(例如C++0x)。因此,我想知道命令式编程语言是否是函数式编程语言的超集。

7得票9回答
将带有break / continue的命令式控制流转换为Haskell

考虑以下这段命令式代码,它能够找到由两个三位数相乘得到的最大回文数(是的,这是“18世纪杰出数学家计划”网站上的第一个任务之一): curmax = 0 for i in range(999,100): for j in range(999,100): if ((i*j) < ...