将 PureScript 函数编译为非柯里化 JavaScript 函数

Compile PureScript function to uncurried JavaScript function

以下 PureScript 函数:

add :: Number -> Number -> Number
add a b = a + b 

... 编译为 JavaScript 如下:

var add = function (a) {
    return function (b) {
        return a + b;
    };
};

我想使用 JavaScript 核心框架在 iOS 上调用此函数,这使得它比需要的更复杂。有没有编译成非柯里化函数的方法?

看看 Data.Function.Uncurried 中的函数 - mkFnN 帮助程序将允许您从 PS-curried 版本定义 JS 多参数函数。

权衡是您将无法在 PS 中以正常方式调用这些函数,您还必须使用相应的 runFnN。不过,如果此模块仅公开 FFI 接口,则不是真正的问题。 :)