我一直在研究FRP,发现了一堆不同的实现.我见过的一个模型是我将其称为"信号"表示的模型.这一基本要素将事件和行为结合到一个实体中.
首先,Signal是一个值为行为的对象.其次,信号有一个事件'流',可以作为标准数据结构查看和操作(您可以在信号上使用'each','map'和'filter'等来定义事件如何反应).例如,我可以这样做(其中'时间'是时间的信号表示):
time.each { t => print(t) } // every time there is a 'tick' the current time is printed
a = time * 5 //where 'a' would be a dynamic value always up to date with time
Run Code Online (Sandbox Code Playgroud)
FRP的这种表示是正确的还是有问题?我非常喜欢它的工作方式以及个人描述的简单方法,但我不确定它的正确性.
programming-languages functional-programming frp reactive-programming