Multi‐way versus one‐way constraints in user interfaces: Experience with the deltablue algorithm
- 1 May 1993
- journal article
- Published by Wiley in Software: Practice and Experience
- Vol. 23 (5) , 529-566
- https://doi.org/10.1002/spe.4380230507
Abstract
The efficient satisfaction of constraints is essential to the performance of constraint‐based user interfaces. In the past, most constraint‐based user interfaces have used one‐way rather than multi‐way constraints because of a widespread belief that one‐way constraints were more efficient. In this paper we argue that many user interface construction problems are handled more naturally and elegantly by multi‐way constraints than by one‐way constraints. We present pseudocode for an incremental multi‐way constraint satisfaction algorithm, DeltaBlue, and describe experience in using the algorithm in two user interface toolkits. Finally, we provide performance figures demonstrating that multi‐way constraint solvers can be entirely competitive in performance with one‐way constraint solvers.Keywords
This publication has 27 references indexed in Scilit:
- Constraint patterns as a basis for object oriented programmingACM SIGPLAN Notices, 1992
- Constraint hierarchiesHigher-Order and Symbolic Computation, 1992
- Incremental attribute evaluationACM Transactions on Programming Languages and Systems, 1991
- An introduction to Prolog IIICommunications of the ACM, 1990
- An incremental constraint solverCommunications of the ACM, 1990
- Animation Using Temporal Constraints: An Overview of the Animus SystemHuman–Computer Interaction, 1987
- Creating dynamic interaction techniques by demonstrationACM SIGCHI Bulletin, 1986
- An object-oriented approach to graphical interfacesACM Transactions on Graphics, 1986
- Juno, a constraint-based graphics systemACM SIGGRAPH Computer Graphics, 1985
- A High-Level Language for Specifying PicturesACM Transactions on Graphics, 1982