Content deleted Content added
wrote about coherence language and paper |
→Coherence: relation to subtext |
||
Line 5:
==Coherence==
A continuation and subset of the Subtext language using other principles<ref>[http://coherence-lang.org/ Coherence home page]</ref>, is '''Coherence'''
{{cquote|Side 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. Automatically coordinating actions lets the programmer express what to do, not when to do it.||[http://dspace.mit.edu/handle/1721.1/45563 Coherent Reaction]|Jonathan Edwards, ''Coherent Reaction'', [[MIT CSAIL]]}}
[[File:je_coherencelogo.gif|150px|thumb|Logo for the Coherence programming language]]
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. 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.<ref>[http://dspace.mit.edu/handle/1721.1/45563 DSpace@MIT : Coherent Reaction], CSAIL Digital Archive, Technical Reports</ref>
==References==
|