有一种叫做反应式扩展的东西,也叫做ReactiveX。http://reactivex.io/intro.html
引言中有这一部分,它说:
它有时被称为“函数式反应式编程”,但这是一个用词不当。ReactiveX可能是函数式的,也可能是反应式的,但“函数式反应式编程”是另一回事。主要的不同之处在于,函数式反应式编程对随时间不断变化的值进行操作,而ReactiveX则对随时间发出的离散值进行操作。(有关函数式反应式编程的更精确信息,请参阅Conal Elliott的工作。)
现在,如果我想了解/编写关于反应式扩展的内容?这是否意味着FRP <:反应式扩展所以反应式扩展也应该涵盖FRP。还是说这两个FRP和ReactiveX或者连续时间和离散时间是两个不同的概念,不应该一视同仁吗?
发布于 2018-01-08 22:21:35
“函数式反应式编程”是Conal Elliott创造(或流行)的一个术语。他对此有一个precise definition (参见What is (functional) reactive programming?)。正如您引用的帮助文档中所指出的,ReactiveX不符合该定义。
考虑到所有这些,两者之间存在一些重叠。
发布于 2018-01-11 14:05:59
在ReactiveX中,时间(除了序列化事件,即因果关系)是不相关的,具体的时间概念取决于调度器。这些值是离散的和基于推送的。
根据定义,FRP有时间的概念。这些值是时间的连续函数。事实上,FRP中最简单的行为是标识函数。
time :: Behavior Time
at time = idtl;dr: FRP是一个完全不同的野兽。
https://stackoverflow.com/questions/48151667
复制相似问题