LUCID, the dataflow programming language
LUCID, the dataflow programming language
An introduction to database systems: vol. I (4th ed.)
An introduction to database systems: vol. I (4th ed.)
Object structure in the Emerald system
OOPLSA '86 Conference proceedings on Object-oriented programming systems, languages and applications
Constraint programming languages: their specification and generation
Constraint programming languages: their specification and generation
The filter browser defining interfaces graphically
European conference on object-oriented programming on ECOOP '87
OOPSLA '87 Conference proceedings on Object-oriented programming systems, languages and applications
POPL '87 Proceedings of the 14th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Views: a way for pattern matching to cohabit with data abstraction
POPL '87 Proceedings of the 14th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Fabrik: a visual programming environment
OOPSLA '88 Conference proceedings on Object-oriented programming systems, languages and applications
An efficient implementation of SELF a dynamically-typed object-oriented language based on prototypes
OOPSLA '89 Conference proceedings on Object-oriented programming systems, languages and applications
OOPSLA '89 Conference proceedings on Object-oriented programming systems, languages and applications
Three steps to views: extending the object-oriented paradigm
OOPSLA '89 Conference proceedings on Object-oriented programming systems, languages and applications
Constraint technology for user-interface construction in ThingLab II
OOPSLA '89 Conference proceedings on Object-oriented programming systems, languages and applications
An incremental constraint solver
Communications of the ACM
PLDI '90 Proceedings of the ACM SIGPLAN 1990 conference on Programming language design and implementation
Object-oriented software construction (2nd ed.)
Object-oriented software construction (2nd ed.)
Constraint-based animation: temporal constraints in the animus system
Constraint-based animation: temporal constraints in the animus system
The importance of pointer variables in constraint models
UIST '91 Proceedings of the 4th annual ACM symposium on User interface software and technology
Propagators and concurrent constraints
OOPSLA/ECOOP '90 Proceedings of the workshop on Object-based concurrent programming
Reconciling environment integration and software evolution
ACM Transactions on Software Engineering and Methodology (TOSEM)
Constraint patterns as a basis for object oriented programming
OOPSLA '92 conference proceedings on Object-oriented programming systems, languages, and applications
Structural active object systems for simulation
OOPSLA '93 Proceedings of the eighth annual conference on Object-oriented programming systems, languages, and applications
VB2: an architecture for interaction in synthetic worlds
UIST '93 Proceedings of the 6th annual ACM symposium on User interface software and technology
Integrating pointer variables into one-way constraint models
ACM Transactions on Computer-Human Interaction (TOCHI)
Supporting distributed, concurrent, one-way constraints in user interface applications
Proceedings of the 8th annual ACM symposium on User interface and software technology
An incremental algorithm for satisfying hierarchies of multiway dataflow constraints
ACM Transactions on Programming Languages and Systems (TOPLAS)
Representing and querying reusable object frameworks
Proceedings of the 1997 symposium on Software reusability
Using model dataflow graphs to reduce the storage requirements of constraints
ACM Transactions on Computer-Human Interaction (TOCHI)
CoJava: a unified language for simulation and optimization
OOPSLA '05 Companion to the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
HotWire: a visual debugger for C++
CTEC'94 Proceedings of the 6th conference on USENIX Sixth C++ Technical Conference - Volume 6
CoJava: optimization modeling by nondeterministic simulation
CP'06 Proceedings of the 12th international conference on Principles and Practice of Constraint Programming
SuperGlue: component programming with object-oriented signals
ECOOP'06 Proceedings of the 20th European conference on Object-Oriented Programming
ConstraintJS: programming interactive behaviors for the web by integrating constraints and states
Proceedings of the 25th annual ACM symposium on User interface software and technology
Hi-index | 0.00 |
Kaleidoscope is an object-oriented language being designed to integrate the traditional imperative object-oriented paradigm with the less traditional declarative constraint paradigm. Imperative state changes provide sequencing while declarative constraints provide object relations. A variables as streams semantics enables the declarative-imperative integration. A running example is used to illustrate the language concepts—a reimplementation of the MacDraw II dashed-lines dialog box. The example is in three parts: the input channel, using imperative code to sequence through modes; the output channel, using constraints to update the display; and the internal relations, using constraints to maintain the data objects' consistency requirements. The last sections of the paper discuss views as a natural result of combining objects with constraints, as well as related and future work.