Show simple item record

Coherent Reaction

dc.date.accessioned2009-06-12T21:30:04Z
dc.date.accessioned2018-11-26T22:25:59Z
dc.date.available2009-06-12T21:30:04Z
dc.date.available2018-11-26T22:25:59Z
dc.date.issued2009-06-12
dc.identifier.urihttp://hdl.handle.net/1721.1/45563
dc.identifier.urihttp://repository.aust.edu.ng/xmlui/handle/1721.1/45563
dc.description.abstractSide effects are both the essence and bane of imperative programming. The programmer must carefully coordinate actions to manage their side effects upon each other. Such coordination is complex, error-prone, and fragile. Coherent reaction is a new model of change-driven computation that coordinates effects automatically. State changes trigger events called reactions that in turn change other states. A coherent execution order is one in which each reaction executes before any others that are affected by its changes. A coherent order is discovered iteratively by detecting incoherencies as they occur and backtracking their effects. Unlike alternative solutions, much of the power of imperative programming is retained, as is the common sense notion of mutable state. Automatically coordinating actions lets the programmer express what to do, not when to do it. Coherent reactions are embodied in the Coherence language, which is specialized for interactive applications like those common on the desktop and web. The fundamental building block of Coherence is the dynamically typed mutable tree. The fundamental abstraction mechanism is the virtual tree, whose value is lazily computed, and whose behavior is generated by coherent reactions.en_US
dc.format.extent15 p.en_US
dc.rightsCreative Commons Attribution 3.0 Unporteden_US
dc.rights.urihttp://creativecommons.org/licenses/by/3.0/
dc.subjectreactive systemsen_US
dc.subjectsynchronous reactive programmingen_US
dc.subjectinteractive systemsen_US
dc.subjectfunctional reactive programmingen_US
dc.subjectbidirectional functionsen_US
dc.titleCoherent Reactionen_US


Files in this item

FilesSizeFormatView
MIT-CSAIL-TR-2009-024.pdf352.3Kbapplication/pdfView/Open
MIT-CSAIL-TR-2009-024.ps1.315Mbapplication/postscriptView/Open

This item appears in the following Collection(s)

Show simple item record

Creative Commons Attribution 3.0 Unported
Except where otherwise noted, this item's license is described as Creative Commons Attribution 3.0 Unported