Helm中的示例是什么?

时间:2015-05-31 19:08:34

标签: haskell frp elm

Haskell FRP库Helm中的Sample a似乎没有太多文档。我正在尝试在Elm中编写类似于sample on的函数,我认为update可以提供帮助。但是我对update的工作原理感到困惑,因为从源代码here开始,似乎根本没有使用变量p

此功能应该做什么,如果没有使用输入p,为什么还要包含它?有一个更好的方法吗?我认为seq可以正常运行,但我尝试使用seq实现我的动画,并且它没有做我想要的事情。

1 个答案:

答案 0 :(得分:1)

可能存在的第一个论点是出于历史原因或与掌舵提供的其他功能保持一致;但我不知道要么肯定地说。

update函数的预期用途似乎是围绕其参数包含适当的构造函数:update p a s将导致Changed aUnchanged a,具体取决于{是{ {1}}与a中存储的值匹配。例如,人们可以使用它作为s的参数:

foldp

然后,下游信号可以轻松忽略foldp (update undefined) :: Eq a => Sample a -> Signal a -> Signal (Sample a) 值。