Reactive programming

Reactive programming

In computing, reactive programming is a declarative programming paradigm concerned with data streams and the propagation of change. With this paradigm, it's possible to express static (e.g., arrays) or dynamic (e.g., event emitters) data streams with ease, and also communicate that an inferred dependency within the associated execution model exists, which facilitates the automatic propagation of the changed data flow. Another example is a hardware description language such as Verilog, where reactive programming enables changes to be modeled as they propagate through circuits.

Comment
enIn computing, reactive programming is a declarative programming paradigm concerned with data streams and the propagation of change. With this paradigm, it's possible to express static (e.g., arrays) or dynamic (e.g., event emitters) data streams with ease, and also communicate that an inferred dependency within the associated execution model exists, which facilitates the automatic propagation of the changed data flow. Another example is a hardware description language such as Verilog, where reactive programming enables changes to be modeled as they propagate through circuits.
Depiction
Reactive programming glitches.svg
Has abstract
enIn computing, reactive programming is a declarative programming paradigm concerned with data streams and the propagation of change. With this paradigm, it's possible to express static (e.g., arrays) or dynamic (e.g., event emitters) data streams with ease, and also communicate that an inferred dependency within the associated execution model exists, which facilitates the automatic propagation of the changed data flow. For example, in an imperative programming setting, a := b + c would mean that a is being assigned the result of b + c in the instant the expression is evaluated, and later, the values of b and c can be changed with no effect on the value of a. On the other hand, in reactive programming, the value of a is automatically updated whenever the values of b or c change, without the program having to explicitly re-execute the statement a := b + c to determine the presently assigned value of a. var b = 1var c = 2var a = b + cb = 10console.log(a) // 3 (not 12 because "=" is not a reactive assignment operator)// now imagine you have a special operator "$=" that changes the value of a variable (executes code on the right side of the operator and assigns result to left side variable) not only when explicitly initialized, but also when referenced variables (on the right side of the operator) are changedvar b = 1var c = 2var a $= b + cb = 10console.log(a) // 12 Another example is a hardware description language such as Verilog, where reactive programming enables changes to be modeled as they propagate through circuits. Reactive programming has been proposed as a way to simplify the creation of interactive user interfaces and near-real-time system animation. For example, in a model–view–controller (MVC) architecture, reactive programming can facilitate changes in an underlying model that are reflected automatically in an associated view.
Is primary topic of
Reactive programming
Label
enReactive programming
Link from a Wikipage to an external page
dl.acm.org/citation.cfm%3Fid=2501666
infoscience.epfl.ch/record/176887/files/DeprecatingObservers2012.pdf
infoscience.epfl.ch/record/148043/files/DeprecatingObserversTR2010.pdf%3Fversion=1
drops.dagstuhl.de/opus/volltexte/2020/13176/
solidjs.com/
xgrommx.github.io/rx-book/
www-sop.inria.fr/mimosa/rp/generalPresentation/index.html
github.com/IgorBuchelnikov/ObservableComputations
Link from a Wikipage to another Wikipage
Callback (computer programming)
Category:Evaluation strategy
Category:Programming paradigms
Computing
Database
Declarative programming
Dependency graph
Directed acyclic graph
Domain-specific language
Elm (programming language)
Event loop
File:Reactive programming glitches.svg
Functional programming
Functional reactive programming
Graphical user interface
Hardware description language
Imperative programming
Incremental computing
JavaScript
JavaScript syntax
JSX (JavaScript)
Lazy evaluation
Martin Odersky
Model–view–controller
Object-oriented programming
Observable (Computing)
Observer pattern
Programming paradigm
Pure function
Reactive Streams
ReactiveX
Relation algebra
Scala (programming language)
Stream (computing)
Svelte
Topological sorting
Transitive closure
Verilog
SameAs
42Rx6
Lập trình phản ứng
m.02vz4nz
Programació reactiva
Programmation réactive
Q4354073
Reactive programming
Reaktiivinen ohjelmointi
Reaktive Programmierung
Reaktivní programování
Реактивне програмування
Реактивное программирование
Реактивно програмирање
响应式编程
Subject
Category:Evaluation strategy
Category:Programming paradigms
Thumbnail
Reactive programming glitches.svg?width=300
WasDerivedFrom
Reactive programming?oldid=1116006149&ns=0
WikiPageLength
26410
Wikipage page ID
12291165
Wikipage revision ID
1116006149
WikiPageUsesTemplate
Template:Citation needed
Template:Cleanup
Template:Cn
Template:External links
Template:Fact
Template:More footnotes
Template:Multiple issues
Template:Programming paradigms
Template:Sxhl