Making data structures persistent
STOC '86 Proceedings of the eighteenth annual ACM symposium on Theory of computing
Imperative functional programming
POPL '93 Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
Proceedings of the fourteenth annual ACM symposium on Principles of distributed computing
A modal analysis of staged computation
POPL '96 Proceedings of the 23rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
POPL '96 Proceedings of the 23rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
NSL '94 Proceedings of the first workshop on Non-standard logics and logical aspects of computer science
Interactive foundations of computing
Theoretical Computer Science - Special issue: theoretical aspects of coordination languages
Adaptive functional programming
POPL '02 Proceedings of the 29th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A Theory of Objects
Meta-programming with names and necessity
Proceedings of the seventh ACM SIGPLAN international conference on Functional programming
Characterizing History Independent Data Structures
ISAAC '02 Proceedings of the 13th International Symposium on Algorithms and Computation
The Join Calculus: A Language for Distributed Mobile Programming
Applied Semantics, International Summer School, APPSEM 2000, Caminha, Portugal, September 9-15, 2000, Advanced Lectures
Composing the User Interface with Haggis
Advanced Functional Programming, Second International School-Tutorial Text
Interactive Functional Objects in Clean
IFL '97 Selected Papers from the 9th International Workshop on Implementation of Functional Languages
An Approach to Implementing Persistent Computations
POS-9 Revised Papers from the 9th International Workshop on Persistent Object Systems
From dynamic binding to state via modal possibility
Proceedings of the 5th ACM SIGPLAN international conference on Principles and practice of declaritive programming
SODA '04 Proceedings of the fifteenth annual ACM-SIAM symposium on Discrete algorithms
Concepts, Techniques, and Models of Computer Programming
Concepts, Techniques, and Models of Computer Programming
Composable memory transactions
Proceedings of the tenth ACM SIGPLAN symposium on Principles and practice of parallel programming
Special Feature: Epigrams on programming
ACM SIGPLAN Notices
A delta-driven execution model for semantic computing
OOPSLA '05 Companion to the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Queue - Multiprocessors
Interactive Computation: The New Paradigm
Interactive Computation: The New Paradigm
Hi-index | 0.00 |
Traditional programming languages are algorithmic: they are best suited to writing programs that acquire all their inputs before executing and only produce a result on termination. By contrast most applications are interactive: they maintain ongoing interactions with their environments. Modern systems address this incompatibility by manually extending the execution model of the host language to support interaction, usually by embedding an event-driven state management scheme which executes fragments of imperative code in response to interactions, the job of each executed fragment being to restore the internal consistency of the computation. The downside of this approach to interaction is that it relies heavily on mutable stores and side-effects and mixes application logic in with behaviour which is more properly the responsibility of an execution model. I describe a programming model called declarative interaction which supports interaction directly. The distinguishing feature of the model is its modal construal of state and interaction.