2012-06-25 41 views
2

此功能的类型是T -> (T -> U) -> U。我相信在Haskell中,它会是类似于($ . flip)函数f(a b)= b(a)有一个共同的名字吗?

或者,从面向对象的角度来看(这是我一直在寻找它的方式):我一直叫它

type T { 
    U myFunction(f: T -> U) { 
     return f(this); 
    } 
} 

“到”在我的笔记,并使用单箭头(->)作为操作员。这是类似于map功能,但对于一个标量:实际应用

 a.into f = f(a) 
[a, b, c].map f = [f(a), f(b), f(c)] 

例子:

42 -> Math.sqrt 
foo.bar.into(doSomething).baz.into(doSomethingElse).xyzzy 
(rather than doSomethingElse(doSomething(foo.bar).baz).xyzzy) 

回答

相关问题