2014-11-14 60 views
2

我是榆树的新手。榆树升降功能

根据该文件,

lift2 : (a -> b -> c) -> Signal a -> Signal b -> Signal c 

Combine two signals with a given function. 

我能有办法做这样的事情?

(a->b->c) -> Signal a -> b -> Signal c 

这是真的,这样做的唯一方法是先用constant : a -> Signal a然后用lift2

只是好奇,是有办法迅速让Signal a -> a,如果可能的话?

回答

4

您将无法使用签名Signal a -> a编写函数。

然而,应该可以写(a -> b -> c) -> Signal a -> b -> Signal c

这是你想要的吗?

foo : (a->b->c) -> Signal a -> b -> Signal c 
foo f sa b = (flip f) b <~ sa