| A. Borning B. N. Freeman-Benson. Integrating Constraints with an Object Oriented Language. In Proc. European Conference On Object-Oriented Programming, pages 268-- 286, 1992. |
....satisfy these relations. Siri uses Bertrand s augmented term rewriting for equation solving. Consistency and integrity of the object is maintained, since there is no mechanism for directly setting the state of an object that disregards the object s constraint specification. The Kaleidoscope 91 [BNFB92] language integrates constraints and object oriented programming, and is also aimed at supporting the development of interactive graphical user interfaces. The language also supports constraint hierarchies, constraint constructors, and multi methods. The main issue that it addresses is solving ....
A. Borning B. N. Freeman-Benson. Integrating Constraints with an Object Oriented Language. In Proc. European Conference On Object-Oriented Programming, pages 268-- 286, 1992.
....is equivalent to assigning a value. If the constraint system is part of a programming language, the infringement of information hiding is under control of the constraint solver. From the application programmer s point of view the data encapsulation is still preserved. Indeed, as pointed out by [7], requiring the language s internal constraint system to respect information hiding is similar to requiring an optimizing compiler to respect information hiding, which would make part of its task impossible. If one is to sacrifice strict information hiding in order to facilitate constraint ....
Bjorn N. Freeman-Benson and Alan Borning. Integrating constraints with an object-oriented language. In O. Lehrmann Madsen, editor, Proceedings ECOOP'92, LNCS 615, pages 268--286. Springer-Verlag, 1992.
....120 There is indeed a classic tension between the general requirements of constraint man agement and the essence of object orientedness. Whereas the latter advocates information hiding, the former requires a complete knowledge of all the attributes related to an object (see, for example [27]) It was recognised that there is no widely accepted object model which would solve this problem in a satisfactory manner and in general terms. Because PREMO is an international standard, i.e. a platform for general consensus, the development team finally decided not to include a fully general ....
B.N. Freeman--Benson and A. Borning. Integrating constraints with an object-- oriented language. In I. Lehrmann Madsen, editor, Proceedings of the ECOOP'92 European Conference on Object--Oriented Programming, Springer Verlag, Lecture Notes in Computer Science 615, 1992.
.... even a much greater power of expressing real world problems of constraints such as those in AI, optimisation, concurrent programming, and programming languages [11] Constraints have been integrated with OO and has led to the development of various systems (e.g. languages such as Kaleidoscope [9], libraries such as PECOS [16] SOLVER [17] and SCHEDULE [12,14] These systems are either developed for general purpose programming or special purposes (i.e. specific to applications) In this paper, we present a object oriented library of constraints that are related to common data structures ....
....programming paradigm. There are three ways of developing programming tools and systems with constraints: Workshop on Computer Science and Information Technologies CSIT 99, Moscow, Russia, 1999 67 1. Provide a new language that integrates constraints; this is the case of Kaleidoscope language [9]. 2. Extend an existing language to support constraints; for example, extending C [18] to allow programming with constraints. This will allow existing applications written in C to be reused. 3. Provide a library of constraints that could be plugged with an existing language [12, 15,16,17] ....
Freeman-Benson, B. and Borning, A. "Integrating Constraints with Object-Oriented Language", ECOOP'92 , 1992.
....is a method for describing over constrained systems of constraints by specifying constraints with hierarchical strengths or preferences 2 . Constraint hierarchies are widely used in areas like HCLP (Hierarchical Constraint Logic Programming) 4, 21] CIP (Constraint Imperative Programming) [8] and graphical user interfaces construction [5] The major advantage of constraint hierarchies is their declarative expression of preferences or strengths of constraints rather than encoding them in the procedural parts of the language. In a constraint hierarchy, the stronger a constraint is, the ....
Freeman-Benson, B.N., Borning A., Integrating Constraints with an ObjectOriented Language, in: Proceedings of the 1992 European Conference on ObjectOriented Programming, pp. 268-286, 1992
....accesses. Constraint Languages. In constraint based languages, dependencies are expressed in terms of constraints between instance variables. When the value of such a constrained variable is modified, a propagation algorithm tries to satisfy the constraints, modifying the linked variables ([FBB92, MGZ92, San93, Ber93, Kum92]) Constraints are not expressed in terms of object interactions, so some inter object dependencies are difficult to express as constraints between instance variables. In the proposed example, it is clear that the use of constraints is not natural. The user only wants to express interactions ....
B. Freeman-Benson and A. Borning. Integrating constraints with an object-oriented language. In ECOOP'92, LNCS 615, pages 268--286, 1992.
....opposite side of our approach, in languages based on constraint solvers, dependencies are expressed in terms of constraints between instance variables. When the value of such a constrained variable is modified, a propagation algorithm tries to satisfy the constraint, modifying linked variables ( FBB92, MGZ92, San93] However, constraints are not expressed in terms of object interactions, so some inter object dependencies are difficult to express as constraints between instance variables. Moreover, some limitations on types of components are imposed by the constraint solver. Finally, as Wilk ....
Bjorn Freeman-Benson and Alan Borning. Integrating constraints with an object-oriented language. In O. Lehrmann Madsen, editor, Proceedings of ECOOP'92, volume 615 of Lecture Notes in Computer Science, pages 268--286, Utrecht, June 1992. Springer-Verlag.
....modeling of the behaviour of animations and interactions with many components or objects. The power of both approaches justifies for a combination where objects and constraints are unified in a harmonious and coordinated whole. However, integration leads to conflicts in programming methodologies ([FBB92]) which obstructs the application of constraints in the object oriented approach. We distinguish two incompatibilities between constraints and object oriented concepts: ffl A constraint solver looks at and sets the internal data of an object. ffl Object oriented programming is imperative, and ....
Bjorn N. Freeman-Benson and Alan Borning. Integrating constraints with an object-oriented language. In O. Lehrmann Madsen, editor, Proceedings ECOOP'92--European Conference on Object-Oriented Programming, Utrecht, 1992, Lecture Notes in Computer Science 615, pages 268--286. Springer-Verlag, 1992.
....and resolve a small, typical scheduling problem. Keywords: constraint satisfaction tool, object oriented constraint solving system 2 1. Introduction In the last ten years, there has been an increasing number of integrations of constraint resolution in an object oriented (OO) environment [1] 2][8][20] The main purpose of such an integration is to combine declarativity and efficient solving methods of constraint systems with powerful features of object oriented languages such as modularity or inheritance. In this paper we present YAFCRS (Y et Another Frame based C onstraint Resolution ....
....variables) and on the other side, the introduction of global resolution mechanism extends the object oriented imperative framework. One of the most important difficulties of these systems is to provide efficient global resolution algorithms. In the constraint object programming approach [3, 8, 13, 19, 24, , constraints are used to automatically and incrementally maintain relations between objects or attributes of objects. In the heart of these systems, there is an incremental constraint solver which is used to permanently ensure the satisfaction of the constraints (if it is possible) The ....
[Article contains additional citation context not shown here]
B.Freeman-Benson, A. Borning : "Integrating Constraints with an ObjectOriented Language" , Proc. of ECOOP'92, pp. 268-286, 1992.
....Synchronization constraints provide modular expression of constraints which need to be satisfied by a single actor before it may process a communication it has received. Although synchronization constraints are often promoted as a way to describe coordination of concurrent objects (e.g. [6]) they are unsatisfactory when describing multi actor coordination: synchronization constraints depend only on the local state of a single actor. In distributed computing, a group of object invocations often must satisfy certain temporal ordering or atomicity constraints. Conventional programming ....
....Alternately, a synchronizer can be permanently associated with a group of servers when the servers are first put into operation. In this case, the constraints can express the default interdependence between servers. Two other approaches to constraints are developed in the systems Kaleidoscope [6] and Rapide [10] Constraints in Kaleidoscope capture relations between instance variables of multiple objects. Thus, Kaleidoscope constraints are formulated in terms of the representation of the constrained entities rather than their abstract interfaces. The Rapide prototyping system developed ....
[Article contains additional citation context not shown here]
Bjorn N. Freeman-Benson and Alan Borning. Integrating Constraints with an ObjectOriented Language. In O. Lehrmann Madsen, editor, Proceedings ECOOP '92, LNCS 615, pages 268--286, Utrecht, The Netherlands, July 1992. Springer-Verlag.
....delivery, not acceptance. Neither synchronous communication, transactions or broadcast protocols can be used to describe constraints permanently associated with object groups. In all three cases, the constraints expressible are associated with individual clients. The constraints of Kaleidoscope [FBB92] capture numerical relations between instance variables of multiple objects. Kaleidoscope emphasizes state consistency by propagating updates. In contrast, synchronizers express invocation consistency by request scheduling. Synchronizers and the constraints of kaleidoscope capture fundamentally ....
Bjorn N. Freeman-Benson and Alan Borning. Integrating Constraints with an Object-Oriented Language. In O. Lehrmann Madsen, editor, Proceedings ECOOP '92, LNCS 615, pages 268--286, Utrecht, The Netherlands, July 1992. Springer-Verlag.
.... Imperative object oriented techniques offer appropriate abstractions for representing application components and sequencing relations between states, but little support in specifying relationships between objects, since relationships are not easily encapsulated within the objects concerned [12][13][3] The maintenance of these relationships has to be delegated to a change propagation mechanism responsible of updating dependent objects in response to changes in the objects on which they depend. The specification and maintenance of dependencies between objects is one of the major problems ....
....using the system s global time. By default, global time is advanced at each constraint operation, but it is also possible to specify sequences of constraint operations to be executed within the same time slice by explicitly parenthesizing them, much as in the programming language Kaleidoscope [12][13]. This simple model makes it possible to elegantly express time dependent behavior by creating constraints or daemons that refer to past values of active variables. All VB2 objects are instances of classes in which dynamically changing information is defined with active variables related through ....
Freeman-Benson BN, Borning A (1992), Integrating Constraints with an Object-Oriented Language. Proc. ECOOP: 268-286.
....means to managing dependencies between objects. We have kept the three design issues involved in the system (objectoriented programming, constraint programming and interactivity) orthogonal. That is, simulation objects can be designed independently on the constraint specification mechanism (see [12] about a discussion on the problems which arise) and on the interaction paradigm the system uses. Firstly, this allows us to use class libraries which have been designed independently on our simulation system. Constraint management can be transparently added to such classes without having to ....
B. N. Freeman-Benson, A. Borning, Integrating Constraints with an ObjectOriented Language, Proceedings ECOOP'92 -- European Conference on ObjectOriented Programming, (O. Lehrmann Madsen, ed.), Utrecht, 1992.
....AI Access Foundation and Morgan Kaufmann Publishers. All rights reserved. David Programming (Van Hentenryck et al. 1992) Many constraint based systems and languages use functional constraints, including thinglab (Borning, 1981) garnet (Myers, Giuse, Vander Zanden, 1992) and kaleidoscope (Freeman Benson Borning, 1992). In this paper, we study functional constraints: the relations they represent are partial functions (notice those are not the same as bijective constraints: see sections 2.1 and 2.2) More precisely, we study the properties given to them by a new local consistency, pivot consistency. We notably ....
Freeman-Benson, B. N., & Borning, A. (1992). Integrating constraints with an objectoriented languuage. In Proceedings of ECOOP-92, pp. 268--286.
....allows for the declarative modeling of the behaviour of interactions with many components or objects. The power of both approaches justifies for a combination where objects and constraints form a harmonious and coordinated whole. However, integration leads to conflicts in programming methodologies [FBB92, Lop97], which obstructs the application of constraints in the object oriented approach. We distinguish two incompatibilities between constraints and object oriented concepts: i) A constraint solver looks at and sets the internal data of an object. ii) Object oriented programming is imperative, ....
....with constraint programming, and described an implementation where all elements of the model are independent concurrent processes and clearly distinguishable programming constructs. Our model is not a language that integrates objects and constraints, such as Siri [Hor91] or Kaleidoscope [FBB92, Lop97]. Rather, we separate communication of the two programming paradigms. The power of both is maintained, without sacrificing any of the typical characteristics. Furthermore, it provides a controlled way of dealing with the information hiding conflict and isolates the imperative object oriented code ....
Bjorn N. Freeman-Benson and Alan Borning. Integrating constraints with an object-oriented language. In O. Lehrmann Madsen, editor, Proceedings ECOOP'92--European Conference on Object-Oriented Programming, Utrecht, 1992, Lecture Notes in Computer Science 615, pages 268--286. Springer-Verlag, 1992.
....statement block while in our case an action is an event handler which is a method of some object. In addition to being used for concurrency, synchronisation, and timing, constraints are used for specifying object invariants ( 46] and as a general construct in declarative languages (e.g. [25]) C.5 Conclusions, present state and future work This document describes the ECO programming model and its use in the Moonlight project. The event based mechanism is used for communication among objects, it allows a higher degree of encapsulation and simplifies development of large and complex ....
B.N. Freeman-Benson and A. Borning. Integrating constraints with an object oriented language. In ECOOP, pages 268--286, June 1992.
....of constraint satisfaction problems. This integration of constraints and objects has been developped taking into account basic requirements such as that of maintaining all the flexibility of the object oriented languages and that of constraints being objects themselves, as extensively discussed in [7]. Variables with real number domains and binary constraints representing distance bounds between two real variables are specialisations of the more general classes representing generic CSP variables and constraints. Moreover the class representing temporal constraints network is a specialisation ....
B. N. Freeman-Benson and A. Borning. Integrating constraints with an object-oriented language. In Proceedings of the 1992 european conference on object-oriented programming, pages 268--286, 1992.
....Proceedings of the Third Eurographics Workshop on ObjectOriented Graphics, Champ ery, Switzerland, October 1992. To appear in Advances in Object Oriented Graphics II, Springer Verlag, 1993. 2 ffl multi way constraints that can express at least simultaneous linear equations and inequations [7, 10] ffl low latency and high bandwidth feedback during direct manipulation [16] ffl incremental addition and deletion of constraints [10, 17] ffl the ability to detect causes of unsatisfiability for debugging inconsistent systems of constraints [10] ffl semantic feedback during direct ....
B. N. Freeman-Benson and Alan Borning. Integrating constraints with an objectoriented language. In European Conference on Object-Oriented Programming, pages 268--286, 1992.
....programming = integrate declarative constraints and imperative oo programming. goal: use constraints to express relations among objects explicitly instead of implicitly. but object identity can result in implicit relations. solution: identity constraints. CIP Identity Gap D. 2 Kaleidoscope From [10]: constraints useful because they are declarative: emphasize relation itself instead of procedural steps necessary to maintain the relation. obstacle to thorough integration of constraints in an object language: objects provide a larger, arbitrarily general computational domain, which cannot be ....
B. Freeman-Benson and A. Borning. Integrating constraints with an object-oriented language. In Proceedings of the European Conference on Object-Oriented Programming, pages 268--286, 1992.
.... (GUIs) utilize constraints to manage internal data and visual objects [68] This approach can be back to the Sketchpad system [79] but the current stream seems to have its source at an object oriented system called ThingLab [3, 6] Another research area is, for example, imperative programming [20, 21, 35, 54, 55, 56, 57] and databases. CHAPTER 7. RELATED WORK 98 Usually, distinct areas take different approaches to constraints. Also, they employ different algorithms for constraint satisfaction. In the rest of this chapter, we mainly review researches related to GUIs. 7.2 Ordinary Constraint Systems In this ....
Freeman-Benson, B. N. and A. Borning, "Integrating Constraints with an Object-Oriented Language," in Proceedings of the European Conference on Object-Oriented Programming (ECOOP), vol. 615 of Lecture Notes in Computer Science, Springer-Verlag, June/July 1992, pp. 268-- 286.
....supports them powerful new features. Typical types of application where both formalisms are needed are, for instance, interactive graphical user interfaces, object oriented databases, etc. Thus a number of models combining OOP and (possibly Concurrent) Constraint Programming have been proposed ([6,13,22]) In this paper we use TGRS as the unifying framework for OOP and CCP and we show that both these programming paradigms can be represented homogeneously by Term Graphs which are manipulated by associated sets of rewrite rules. In addition to the ability of TGRS to present objects, agents and ....
B. N. Freeman-Benson and A. Borning, Integrating Constraints with an ObjectOriented Language, ECOOP'92, June, LNCS 615, Springer Verlag, pp. 268-286.
....of the first such efforts; an important characteristic of his system is the maintenance of dependency information to support dependency directed backtracking and to aid in generating explanations. Leler [39] describes Bertrand, a constraint language based on augmented term rewriting. Kaleidoscope [18, 19, 23] combines constraints with object oriented, imperative programming. Kaleidoscope uses the same constraint hierarchy theory employed in HCLP to reconcile the assignment operation of imperative programming with declarative constraints: in Kaleidoscope, an assignment statement x x 5 is semantically ....
Bjorn Freeman-Benson and Alan Borning. Integrating Constraints with an Object-Oriented Language. In Proceedings of the 1992 European Conference on Object-Oriented Programming, pages 268--286, June 1992.
No context found.
Bjorn Freeman-Benson and Alan Borning. Integrating Constraints with an Object-Oriented Language. In Proceedings of the 1992 European Conference on ObjectOriented Programming, pages 268-286, June 1992.
....fragments a recipe for maintenance headaches. To address this problem, we proposed constraint imperative programming (CIP) an integration of two disparate paradigms: a standard object oriented imperative one, and a declarative constraint one [Freeman Benson 91, Freeman Benson Borning 92a, Freeman Benson Borning 92b] Compare the two code fragments in Table 1, which allow the user to drag the mercury of a thermometer up and down. The version on the left uses only standard imperative constructs. It requires the programmer to check whether values have changed and if so, to fill or erase the appropriate ....
....Other constraint languages include Steele s language [Steele Jr. 80] Bertrand [Leler 87] and Siri [Horn 92a, Horn 92b] Of these, Siri, another constraint imperative language, is the closest to Kaleidoscope. For discussions of related work beyond this brief mention, see [Borning et al. 92, Freeman Benson Borning 92b, Freeman Benson 91] The first version of Kaleidoscope, Kaleidoscope 90, had a Smalltalk like syntax and served as a proof of concept for CIP. Its successor, Kaleidoscope 91, had several features lacking from Kaleidoscope 90: a conventional Algol like syntax, multi methods, and eager constraint ....
Bjorn Freeman-Benson and Alan Borning. Integrating constraints with an object-oriented language. In Proceedings of the 1992 European Conference on Object-Oriented Programming, pages 268--286, June 1992.
....that is an instance of this framework. Kaleidoscope 90 has been implemented, and various sample programs have been executed. This paper is based primarily on Freeman Benson s recently completed Ph.D. dissertation [11] Reference [7] is a preliminary conference paper on Kaleidoscope, while [8] discusses in detail issues that arise when integrating objects and constraints. 2 A Motivating Example Consider the scroll bar shown on the left. The scroll bar has up and down buttons and a thumb. The size of the thumb is proportional to the number of lines of the document that are ....
Bjorn Freeman-Benson and Alan Borning. Integrating Constraints with an Object-Oriented Language. In Proceedings of the 1992 European Conference on Object-Oriented Languages, June 1992. To appear.
First 50 documents
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC