Abstract
The main objective of the work reported in this article is the use of constraints in graphics and user interfaces. We believe that constraints need to be integrated in a powerful programming paradigm in order to be usable in large-scale systems. The system we present embeds constraints in a prototype-based model. A prototype object (a template) contains internal constraints, and exports slots so that instances of the prototype can be further constrained. Instantiation uses delegation to share constraints between instances. As a consequence, changing a template has an immediate effect on all its instances. The model also features generic templates and skeletons to create complex constrained objects. The system is open and extensible: new constraint types can be defined and alternative solvers can be used. The basic solver uses local propagation.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Beaudouin-Lafon, M., Berteaud, Y, and Chatty, S., Creating direct manipulation applications with Xtv. In Proc. EX’90, November 1990.
Borning, A., Duisberg, R., Freeman-Benson, B.N., Kramer, A., and Woolf, M., Constraint hierarchies. In Proc. OOPSLA’87, pages 48-60, October 1987.
Borning, A., The programming language aspects of Thinglab, a constraint-oriented simulation laboratory. ACM Transactions on Programming Languages and Systems, 3(4):353–387, October 1981.
Borning, A., and Duisberg, R., Constraint-based tools for building user interfaces. ACM Transactions on Graphics, 5(4):345–374, October 1986.
Ege, R.K., Direct manipulation user interfaces based on constraints. In Proc. COMP-SAC’89, pages 374-380, September 1989.
Freeman-Benson, B.N., The DeltaBlue algorithm: an incremental constraint hierarchy solver. Technical Report 88-11-09, Dept. of Computer Science, University of Washington, November 1988.
Freeman-Benson, B.N., Kaleidoscope: Mixing constraints, objects and imperative programming. In Proc. ECOOP-OOPSLA’90, pages 77-87, 1990.
Henry, T.R., and Hudson, S.E., Using active data in a UIMS. In Proc. ACM Siggraph Symposium on User Interface Software, October 1988.
Ingalls, D., Wallace, S., Chow, Y.Y., Ludolph, F., and Doyle, K., Fabrik: A visual programming environment. In Proc. OOPSLA’88, pages 176-190, September 1988.
Jaffar, J., and Lassez, J-L., Constraint logic programming. In Proc. 14th Annual ACM Symposium on Principles of Programming Languages, pages 111-119, January 1987.
Leler, Wm. Constraint Programming Languages. Addison-Wesley, 1987.
Lieberman, H., Using prototypical objects to implement shared behavior in object oriented systems. In Proc. OOPSLA’86, pages 214-223, September 1986.
Mackworth, A.K., Consistency in networks of relations. Artificial Intelligence, 8(1):99–118, 1977.
Maloney, J.H., Borning, A., and Freeman-Benson, B.N., Constraint technology for user-interface construction in ThingLab II. In Proc. OOPSLA’89, pages 381-388, October 1989.
Mourlin, F., and Cournarie, E., A graphical environment for Occam programming. In Proc. of the First International Conference on Applications of Transputer, August 1989.
Myers, B., Giuse, D., Dannenberg, R.B., Vander Zanden, B.T., Kosbie, D.S., Pervin, E., Mickish, A., and Marchai, P., Garnet, comprehensive support for graphical, highly interactive user interfaces. IEEE Computer, pages 71-85, November 1990.
Nelson, G., Juno, a constraint-based graphics system. In Proc. SIGGRAPH’85, pages 235-243, July 1985.
Rankin, J.R., A graphics object-oriented constraint solver. In Second Eurographics Workshop on object-oriented Graphics, June 1991.
Szekely, P.A, and Myers, B., A user interface toolkit based on graphical objects and constraints. In Proc. OOPSLA’88, pages 36-45, September 1988.
Ungar, D., and Smith, R.B., Self: The power of simplicity. In Proc. OOPSLA’87, pages 227-241, October 1987.
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1995 EUROGRAPHICS The European Association for Computer Graphics
About this chapter
Cite this chapter
Cournarie, E., Beaudouin-Lafon, M. (1995). ALIEN: A Prototype-Based Constraint System. In: Laffra, C., Blake, E.H., de Mey, V., Pintado, X. (eds) Object-Oriented Programming for Graphics. Focus on Computer Graphics. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-79192-5_8
Download citation
DOI: https://doi.org/10.1007/978-3-642-79192-5_8
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-79194-9
Online ISBN: 978-3-642-79192-5
eBook Packages: Springer Book Archive