反应式编程(Reactive programming,Rx)最初来源于函数式语言里面的函数式反应编程(Functional Reactive programming,FRP)。后来随着微软.Net Framework增加了Reactive Extension而在主流语言中流行起来。在创建反应式编程语言时采用了几种流行的方法。特定于各种域约束的专用语言的规范。这些约束通常以实时,嵌入式计算或硬件描述为特征。另一种方法涉及通用语言的规范,其包括对反应性的支持。其他方法在定义中使用,并且使用编程库或嵌入式域特定语言,这些语言能够在编程语言的旁边或之上实现反应。规范和这些不同方法的使用导致语言能力权衡。通常,语言越受限制,其关联的编译器和分析工具能够通知开发者越多(例如,在执行分析程序是否能够实际实时执行时)。特异性的功能性交易可能导致语言普遍适用性的恶化。