currying

    0热度

    1回答

    让我通过一个例子来介绍这个问题。这是从马丁·奥德斯基的函数式编程课程的讲义2.3中获得的。 我有一个功能,找到固定点反复,像这样 object fixed_points { println("Welcome to Fixed Points") val tolerance = 0.0001 def isCloseEnough(x: Double, y:

    2热度

    1回答

    这是我第一次与ramda一起玩。我试图创建一个map函数,它自动为数组中的每个对象添加一个键。将是有益的反应无状态的功能,例如,我们可能有一个函数签名 ({ prop1, prop2, key }) => ... 和 [{ prop1: 'prop one', prop2: 'prop two' }, {...etc}] 这里的工作示例数组: const mapI = R.addIndex

    19热度

    1回答

    哈斯克尔咖喱的功能。 Clojure虽然没有允许partial和函数宏作为相同的方法。 我以为我记得听过/读过Hickey决定背后的原因。有人回想起那个原因是什么或者我能找到它的地方吗? 我希望从理论上学到一些东西。

    1热度

    2回答

    所以我遇到了问题,如果我点击速度足够subnmit按钮,我的表单submited几次。我怎样才能防止这一点?令牌是自动添加的,但它根本无助于我的猜测。 形式例如: <div class="row padding-10"> {!! Form::open(array('class' => 'form-horizontal margin-top-10')) !!} <div clas

    2热度

    3回答

    我试图以相当通用的方式构造一些对象。有些对象具有构造函数参数,其他则不具备。 我想要实现的是返回某种构建函数,如果需要我可以提供构造函数参数。 我知道我可以有可选的参数传递下来,但在我的真实场景中,有几个图层,我厌恶添加可选参数的层次结构。 我不太喜欢部分应用程序/ currying,但我可以在这里使用它,如果是这样,如何? 下面是一些示例代码 - 这不会起作用 - 尝试并解释更多我之后的内容。

    0热度

    1回答

    auxInner下面返回一个int列表。但是当我在随后的inner函数中调用List.sum(auxInner xs ys)时,我得到这个奇怪的错误! List.sum不是int列表吗? let rec auxInner xs ys = match (xs, ys) with |([],[]) -> [] |([], ys) -> ys |(xs, [])

    6热度

    3回答

    当制作我的自定义Either和Functor,只是为了了解更清晰的类型和类型类,我发现了以下情况: Functor module Functor (Functor, fmap) where import Prelude hiding(Functor, fmap) class Functor f where fmap :: (a -> b) -> f a -> f b Eith

    2热度

    3回答

    一直在迅速咖喱功能玩弄,和我想现在要编写一个函数,可以写成: sum(1,2) //or sum(1)(2) //both equal 3 这是很容易这样做有两个函数的定义: // curried - usage: sum(1)(2) or sum(1) func sum(a: Int) -> (Int -> Int) { return { b in a + b } } /

    1热度

    3回答

    在下面的WPF网格中,中间的列不是6.文本B一路走到右边而不是6远离文本A.我试过*而不是自动换其他列,但是结果是一样的。 如何制作中间栏6?有没有解决方法?为什么会发生?它是打算行为还是错误? 我以这种方式制作网格,因此我无需在每个元素上设置边距。 <ScrollViewer HorizontalScrollBarVisibility="Auto"> <Grid> <Gri

    2热度

    1回答

    对于具有三个或更多参数的函数,currying如何工作? 我搜索了SO和Google。例如,具体例子What is 'Currying'?; https://en.wikipedia.org/wiki/Currying是关于二进制函数f (x, y)。 在这种情况下,g = curry f取一个参数并产生一个一元函数(f x)。 我的问题是: 我们如何始终如一地扩展,以一个正参数的函数,例如f3