2015-05-31 113 views
3

在Haskell FRP库Helm中似乎没有太多关于Sample a的文档。我试图在Elm中编写一个类似于sample on的函数,我认为update可以提供帮助。不过,我很困惑update是如何工作的,因为从源代码here看来,根本没有使用变量p头盔是什么样的?

这个函数应该做什么?为什么包含输入p如果不使用?有一个更好的方法吗?我认为seq可以工作,但我试着用seq来实现我的动画,但它没有做我正在寻找的东西。

回答

1

可能是因为历史原因或与helm提供的其他功能一致存在的第一个参数;但我对确定地说不清楚。

的预期用途update功能似乎是环绕它的参数适当的构造函数:update p a s将导致依赖于存储在s值是否a比赛无论是Changed aUnchanged a。有人可能会利用这一点,例如,作为参数传递给foldp:然后

foldp (update undefined) :: Eq a => Sample a -> Signal a -> Signal (Sample a) 

下行信号很容易忽略Unchanged值。