32 citations found. Retrieving documents...
Scott E. Hudson. "Incremental Attribute Evaluation: A Flexible Algorithm for Lazy Update". ACM TOPLAS 13, 3 (July 1991), 315-341.

 Home/Search   Document Not in Database   Summary   Related Articles   Check  

This paper is cited in the following contexts:

First 50 documents

DLoVe: Using Constraints to Allow Parallel Processing in.. - Deligiannidis (2002)   (Correct)

....Our DLoVe solver allows the constraint graph to be distributed over several workstations, for faster response time as well as for supporting multi user virtual environments. The demand driven or lazy evaluation algorithm in DLoVe is based on the optimal algorithm of Hudson s Eval Vite system [32] [34]. DLoVe adds some features designed specifically for the requirements of VR interfaces. In addition, DLoVe is designed for continuous, rapidly updated response to user inputs. One consequence is that it is often reasonable to discard queued up inputs in favor of responding to the latest input. ....

....the constraint based language made possible the increased performance we obtained through parallel processing. 9. Related Work Our continuous model is similar to a data flow graph or a set of one way constraints between actual inputs and outputs and draws on research in constraint systems [32] [34]. The model provides the ability to re wire the graph from within the dialogue. Several researchers are using constraints for 2 D graphical interfaces [25] 26] 33] 6] 4] Kaleidoscope [3] is a constraint based language motivated by 2 D WIMP interfaces, and it explicitly supports temporary ....

S.E. Hudson, "Incremental Attribute Evaluation: A Flexible Algorithm for Lazy Update," ACM Transactions on Programming Languages and Systems, vol. 13, no. 3, pp. 315341, July 1991.


Incremental Rewriting - van der Meulen (1994)   (Correct)

....of functions applied to the program, is to take place only on explicit request by the user. Related to the previous point is that the algorithm has a data driven part and a demand driven part. In this it resembles the approach for lazy and incremental attribute updating as proposed by Hudson [Hud91] The data driven part is the status updating performed by PROPAGATE TE UP and is called after each edit action that causes a subtree replacement in the (attributed) abstract syntax tree of the text in the editor. Status propagation is expected to be a very fast operation. The reevaluation of ....

S.E. Hudson. Incremental attribute evaluation: a flexible algorithm for lazy update. ACM Transactions on Programming Languages and Systems, 13(3):315--341, 1991.


Performance Characterization of Distributed.. - Deligiannidis, Couch..   (1 citation)  (Correct)

....environment where multiple users share the virtual environment) render displays and read user input, while Workers perform calculations on behalf of the Coordinators. DLoVe s constraint engine is mainly based upon incremental demand driven constrained solving algorithms found in Eval vite [10] and algorithms presented in [3] A modification of these algorithms produced the DLoVe s constraint engine that satisfies the real time requirements of VR. The underlying elements of DLoVe s constraint engine are C objects called Links and Variables. Links implement behavior, and Variables are ....

Hudson, A., "Incremental Attribute Evaluation: A Flexible Algorithm for Lazy Update", ACM Transactions on Programming Languages and Systems, v13, n3, July 1991, pp. 315-341.


Modelling Dynamic Dependencies by Functional Database Model - Savnik, Mohoric, Dolenc..   (Correct)

....By the dynamic object properties we mean the way an object reacts on specified messages and how the change of its state influences the states of the objects in its environment. The dynamic object properties are commonly modelled by methods [5] triggers [2] or derived functions (attributes) [8, 9, 4, 6]. The aim of our work was to design and to implement the database model that is capable of describing structural and dynamic properties of design objects. The resulting model is a functional database model CDM (i.e. Construction Database Model) The model was implemented in a CAD system for ....

....dynamic function. The use of dynamic functions enable the description of the design object construction process and its reevaluation in the case of a change of parameter objects. The functionality of dynamic function can be compared to the derived attributes as they are defined in SDM [7] Cactis [8, 9] and Trait [4] 2. The Functional Database Model CDM Every concrete or conceptual entity is represented by an object. Objects may represent geometric objects, mechanical parts, etc. Object properties are modelled by functions. Properties of a collection of similar objects are represented by a ....

[Article contains additional citation context not shown here]

Scott E.Hudson, Incremental Attribute Evaluation: A Flexible Algorithm for Lazy Update, ACM Trans. on Prog. Languages and Systems, Vol.13, No.3, July 1991, 315-341


A Software Model and Specification Language for.. - Jacob.. (1999)   (12 citations)  (Correct)

....in succession, and the inputs have not changed, only one full recalculation would be executed, because it would have cleared the dirty flags. Our next solver is LoVe a backward chaining system, using incremental, lazy evaluation. Its algorithm is based on that of Hudson s Eval Vite system[26, 28]. This is an optimal algorithm, which evaluates the minimal set of links for each request. LoVe accepts cyclic graphs, i.e. one can define a relationship x = x 4 where x is the previous value of x. When the value of a variable is requested, LoVe recursively finds all the links that need to be ....

....user interface software research. The discrete component draws on research in eventdriven user interface management systems[48] The continuous component is similar to a dataflow graph or a set of one way constraints between actual inputs and outputs and draws on research in constraint systems[26, 28]. The model provides the ability to re wire the graph from within the dialogue. A variety of specification languages for describing WIMP and other previous generations of user interfaces has been developed, and user interface management systems have been built based up on them[45] using ....

S.E. Hudson, "Incremental Attribute Evaluation: A Flexible Algorithm for Lazy Update," ACM Transactions on Programming Languages and Systems, vol. 13, no. 3, pp. 315-341, July 1991.


DLoVe - A specification paradigm for designing distributed VR.. - Deligiannidis (2000)   (Correct)

....re computation reevaluation. When a user changes one or more parameters in an application, or adds or deletes a number of constraints, most of the existing constraints remain satisfied and only a small number must be re evaluated. An incremental constrained solving algorithm, such as Eval vite [Hudson 91] and the algorithms presented in [Zanden 94] can automatically identify which constraints must be reevaluated and limit its solving to these constraints. Such an algorithm can be used with any application written for that constraint system. In contrast, a conventional language requires the ....

....the assert during construct specifies that a constraint should remain in force during the execution of a block or loop. Lazy and Eager Constraint Solving Constraint solving can be in either a lazy or eager style [Zanden 94] Lazy evaluation (used by Garnet [Myers 90a] Myers 90b] Eval vite [Hudson 91] and other systems, evaluates a constraint only if it affects a result that the user Leonidas Deligiannidis Page 21 requests. Eager evaluation evaluates a constraint immediately when values change. Thus, a lazy evaluation system can obtain variables whose values are out of date. Lazy evaluation ....

[Article contains additional citation context not shown here]

Hudson, A., "Incremental Attribute Evaluation: A Flexible Algorithm for Lazy Update", ACM Transactions on Programming Languages and Systems, v13, n3, July 1991, pp. 315-341. Leonidas Deligiannidis Page 306


An Incremental Algorithm for Satisfying Hierarchies of Multi-way, .. - Zanden (1995)   (26 citations)  (Correct)

....of this paper. The execution phase may use any of the existing one way constraint QuickPlan 6 satisfaction algorithms, including both eager evaluators [Vander Zanden et al. 1994; Alpern et al. 1990; Reps et al. 1983; Hoover 1987; Hoover 1992] and lazy evaluators [Vander Zanden et al. 1994; Hudson 1991; Barth 1986] The paper is organized as follows. Sections 2 discuss why dataflow constraints are important. Section 3 presents a formulation of the constraint satisfaction problem as a graph theoretic problem, and expresses constraint hierarchies in graph theoretic terms. Section 4 describes a ....

....running time of QuickPlan is linear (i.e. O(N) and in many cases sublinear. The asymptotic complexity analysis will make a number of assumptions that are justified in practice: 1. The number of variables that belong to a constraint is bounded by a small constant [Vander Zanden et al. 1994; Hudson 1991; Hill 1993] Hence the constraint graph has O(N) edges. 2. The number of methods associated with any constraint is bounded by a small constant, M [Sannella 1994a] This assumption, combined with the previous assumption that the number of variables that belong to a constraint is bounded by a ....

Hudson, S. E. 1991. Incremental attribute evaluation: A flexible algorithm for lazy update.


Tracking the Culprits: Making One-Way Constraint GUIs More.. - Atwood, Jr., Burnett   (Correct)

....to the output) The appeal of EM is that it combines lazy and eager features to improve efficiency in the one way constraint model, and our work is another step in that direction. Hudson s EVAL vite [14] uses EM, as does Bharat and Hudson s Doppler system in a distributed environment [4] In [13], Hudson formally presents and analyzes the EM technique, and in [14] he shows that EM is optimal in the variables it selects for recomputation. However, our responsiveness requirement considers not only the selection of variables for recomputation, but also the selection of which variables to ....

Hudson, S. Incremental attribute evaluation: a flexible algorithm for lazy update, ACM TOPLAS 13(3), (July 1991), 315-341.


Data Oriented LP with Magritte - Jos'e Paulo   (Correct)

....and editable with structural commands. The interaction engine implementing this framework is structured in three main parts. The core is the database that records the linked tree and node attributes. It uses an incremental attribute procedure with an algorithm similar to the one described in [6], to update the linked tree attributes after modifications. The actual computation of attribute values is performed by optimized Prolog predicates compiled from styles by the visualization module. This module is also responsible for rendering on screen a visualization of the linked tree. The ....

Scott E. Hudson. Incremental attribute evaluation: A flexible algorithm for lazy update. ACM Transactions on Programming Languages and Systems, 13(3), July 1991.


Using Model Dataflow Graphs to Reduce the Storage.. - Richard Halterman (1998)   (Correct)

....paper a mark sweep algorithm is used for constraint satisfaction. A mark sweep algorithm has two phases: 1) a mark phase in which all constraints that depend on a changed variable are marked invalid, and 2) a sweep phase in which constraints are brought up to date by evaluating their formulas [5, 20, 12, 25]. The mark phase is our primary interest in this paper, since it uses the dataflow edges in the constraint graph to determine which constraints must be marked invalid. 2.3 Editing Model Our editing model is similar to one supported by a prototype instance model [4, 15] An application can create ....

HUDSON, S. E. Incremental attribute evaluation: A flexible algorithm for lazy update. ACM TOPLAS 13, 3 (July 1991), 315--341.


AML: Attribute Grammars in ML - Efremidis, Mughal, Reppy, al. (1997)   (2 citations)  (Correct)

.... operations to subtree replacements (e.g. a delete operation is implemented by replacement with a null tree) After a subtree replacement operation, the tree will no longer be consistent; Reps and others have described so called optimal evaluation algorithms for restoring attribute consistency [38, 45, 17, 18]. These algorithms basically work by change propagation; i.e. by starting with a set of possibly inconsistent attributes and propagating changes through the tree (when an attribute value is changed to become consistent, its successors may become inconsistent) Applications of this technology ....

....in attribution rules, we would have something very close to Farnum s attribute patterns [8] We plan to explore this similarity. ffi Further experimentation with evaluation strategies and storage schemes. We plan to use it to explore other evaluation strategies, including demanddriven evaluation [18] and parallel attribute evaluation [20, 25] Our current technique for storing attributes is simple, but not very space efficient. Also, removing subtrees requires expensive hash table operations, since the attributes of the subtree must be removed from the table. We have some ideas for other ....

HUDSON, S.E. 1991. Incremental Attribute Evaluation: A Flexible Algorithm for Lazy Update. ACM Transactions on Programming Languages and Systems 13, 3, 315--341.


Multi-way versus One-way Constraints in User.. - Sannella.. (1993)   (56 citations)  (Correct)

....Some one way solvers don t allow cycles; in this case, the multi way system is clearly strictly more powerful. Other one way solvers do allow cycles, and handle them by a variety of techniques. Garnet [35] Fabrik [26] RENDEZVOUS [21, 22] and Hudson s incremental attribute evaluation algorithm [25] all use the once around the loop technique, in which updated values are propagated through a cyclic network of one way constraints until the loop is closed. This gives correct answers in many cases, but can result in some constraints being left unsatisfied. It is possible for a network of ....

....techniques responsible for the time difference between the Garnet and Multi Garnet versions, such as eager evaluation and reusing plans, could just as easily be implemented in a system using one way constraints. 5. 9 Other Systems Hudson describes an algorithm for incremental attribute evaluation [25], which can be viewed as one way constraint propagation. For a system of evaluation rules hand translated into C, running on a DECstation 3100, a long linear chain of rules could be evaluated at more than 40,000 attributes per second. Hudson s benchmark is very similar to our chain of equalities ....

Scott E. Hudson. Incremental Attribute Evaluation: A Flexible Algorithm for Lazy Update. ACM Transactions on Programming Languages and Systems, 13(3):315--341, July 1991.


The SkyBlue Constraint Solver - Sannella (1992)   (8 citations)  (Correct)

....particular optimization SkyBlue does not currently implement is detecting when a method calculates an output value that is the same as the current value. In this case, it may be possible to avoid executing downstream methods. Algorithms that implement this optimization are described in references [10, 19]. 5 Performance Techniques The SkyBlue algorithm as presented in Section 4 works correctly, but its performance suffers as the constraint graph becomes very large. This happens for two reasons: First, larger constraint graphs may contain greater numbers of unenforced constraints that SkyBlue has ....

Scott E. Hudson. Incremental Attribute Evaluation: A Flexible Algorithm for Lazy Update. ACM Transactions on Programming Languages and Systems, 13(3):315--341, July 1991.


Theoretical Properties and Efficient Satisfaction of Hierarchical .. - Hosobe (1997)   (Correct)

....output [47] and ThingLab [3, 6] and CONSTRAINTS [78] exploit multi way constraints, where each variable can be an output. In the context of local propagation for ordinary systems, researchers have been investigated various topics, for example, incremental satisfaction of constraint systems [43, 88], treatment of pointer variables [41, 87] compilation of constraint systems [89] support of computer supported cooperative work [34] and light implementation of constraints [44] Another technique for solving ordinary systems is transformation. GITS uses a simple technique that replaces ....

Hudson, S. E., "Incremental Attribute Evaluation: A Flexible Algorithm for Lazy Update," ACM Transactions on Programming Languages and Systems, vol. 13, no. 3, July 1991, pp. 315--341.


An Incremental Algorithm for Satisfying Hierarchies of Multi-way, .. - Zanden (1995)   (26 citations)  (Correct)

....technique to find acyclic solutions to sets of multi output constraints. QuickPlan 12 5.2. 4 Time Complexity In analyzing the time complexity of constraint satisfaction algorithms, it is commonly assumed that the number of variables that belong to a constraint is bounded by a small constant [49, 25, 41, 21]. This assumption is justified in practice and thus will be adopted throughout this paper in the analysis of time complexity. Similarly, in practice the number of methods associated with any constraint is bounded by a small constant, and thus it will be assumed throughout this paper that the ....

....conflict X X X O(M ) Rendezvous mark sweep X O(N) bipartite graph Gangnet matching X X O(N) executed and then executes them in topological order. The execution phase may use any one way constraint satisfaction algorithm, including both eager evaluators [49, 1, 37, 23, 24] and lazy evaluators [49, 25, 2]. 8.2 Domain Specific Constraint Solvers Multi way, local propagation solvers may be used either individually or in concert with domainspecific solvers, such as linear constraint solvers [17] non linear constraint solvers [10, 50, 51, 16, 8] and linear equality and inequality solvers [29, 32, ....

Scott E. Hudson. "Incremental Attribute Evaluation: A Flexible Algorithm for Lazy Update". ACM TOPLAS 13, 3 (July 1991), 315-341.


Constructing Integrated Software Development Environments.. - Grundy, Hosking (1996)   (3 citations)  (Correct)

....refer to all graph nodes and edges as components. MViews graphs are used to represent both the structure of a software system and some of the semantic values associated with these structures, similar to the calculated attributes of decorated abstract syntax trees used in attribute grammar systems [15, 32]. For example, the full interface (signature) of a class in SPE must be calculated from attributes and methods the class itself defines, and those it inherits via its generalisation relationships with other classes. This interface list can be represented by MViews as a list attribute of the class ....

....appropriately to maintain inter component consistency. When a component is modified, all affected views must be updated to reflect the change [27, 34] and affected semantic attributes must be recalculated [4,32] This change propagation process should be as efficient and automatic as possible [15]. To allow for flexible environment extensibility and integration, MViews components broadcast a description of an operation s effect to all the relationships they participate in. These relationships respond to this change description by updating their own state, or related components states, to ....

Hudson, S.E. Incremental Attribute Evaluation: A Flexible Algorithm for Lazy Update. ACM TOPLAS 13, 3 (July 1991), 315-341.


Incremental Updates in Structured Documents - Lindén (1994)   (Correct)

....of parts of an automaton for recognizing certain textual patterns until the parts are needed. Similarly, a lazy parser generates a parse table during parsing, but only those parts that are needed to parse the input sentence at hand. User interfaces are another application area [Hud86, HK88, Hud91] Various components of the user interface are produced only when they are directly or indirectly observed by the user. The UIMS user interface management system [HK88] supports direct manipulation. It provides semantic feedback with a graphical representation and automatic screen update. The ....

....reevaluation phase that only evaluates nodes that are out of date and important. A node is important if it has an immediate effect on the system. Only nodes that need to be reevaluated are evaluated. Hudson also suggests a way of having different views of the data in an attributed graph [Hud89, Hud91] For each node there is an attribute V which computes the view node. If a subview is missing, i.e. it is not visible, it is replaced by dots. Views are constructed first top down (what is visible) and then bottom up (subviews) The user interface is updated lazily, i.e. only attributes that ....

Scott E. Hudson. Incremental attribute evaluation: A flexible algorithm for lazy update. ACM Transactions on Programming Languages and Systems, 13(3):315 -- 341, July 1991.


Incremental Updates in Structured Documents - Lindén (1994)   (Correct)

....and a reevaluation phase that only evaluates nodes that are out of date and important. A node is important if it has an immediate effect on the system. Only nodes that need to be reevaluated are evaluated. Hudson also suggests a way of having different views of the data in an attributed graph [Hud89, Hud91] For each node there is an attribute V which computes the view node. If a subview is missing, i.e. it is not visible, it is replaced by dots. Views are constructed first top down (what is visible) and then bottom up (subviews) The user interface is updated lazily, i.e. only attributes ....

Scott E. Hudson. Incremental attribute evaluation: A flexible algorithm for lazy update. Technical Report TR 89-12, University of Arizona, Tucson, Arizona, 1989.


Proteus: An Adaptable Presentation System for a Software.. - Munson (1994)   (7 citations)  (Correct)

....storage requirements of the system because the size of the dependency information would be proportional to the number of nodes in the document, rather than the size of the presentation schema. The first problem was addressed by Hudson s work on incremental attribute evaluation in general graphs [30], but the second is fundamental to the approach of storing explicit dependency information. A better solution has been explored by my colleague on the Ensemble Project, Kannan Muthukkarruppan. He has designed and implemented a attribute grammar system called SPINE [51] The attribute grammar ....

Scott E. Hudson. Incremental attribute evaluation: A flexible algorithm for lazy update. ACM Transactions on Programming Languages and Systems, 13(3):315--341, July 1991.


GADGET: A Toolkit for Optimization-Based Approaches to.. - Fogarty, Hudson (2003)   (1 citation)  Self-citation (Hudson)   (Correct)

No context found.

Hudson, S.E. (1991) Incremental Attribute Evaluation: A Flexible Algorithm for Lazy Update. ACM Transactions on Programming Languages and Systems (TOPLAS), 13 (3). 315-341.


GADGET: A Toolkit for Optimization-Based Approaches to.. - Fogarty, Hudson (2003)   (1 citation)  Self-citation (Hudson)   (Correct)

No context found.

Hudson, S.E. (1991) Incremental Attribute Evaluation: A Flexible Algorithm for Lazy Update. ACM Transactions on Programming Languages and Systems (TOPLAS), 13 (3). 315-341.


User Interface Specification Using an Enhanced Spreadsheet Model - Hudson (1993)   (14 citations)  Self-citation (Hudson)   (Correct)

....by deriving displays directly from application and interface data. To handle change propagation in an efficient manner, the system uses an incremental and lazy update algorithm. This algorithm was originally developed for the Higgens UIMS [Huds88] and is formally analyzed and proven correct in [Huds91]. The algorithm is incremental in that it responds to (small) changes by evaluating only the (small) set of values that might require update (rather than all attributes in the system) It is lazy in that it avoids the evaluation of attributes that 6 ....

....total overhead is described in [Reps83] However, this algorithm is restricted to cases that can be embedded in parse trees induced by a context free grammar. The Penguims system uses a more general algorithm which is optimal in the set of attributes recomputed, but not in total overhead (see [Huds91] for full details) Other incremental algorithms for the general case are described in [Alpe87, Vand91] Another way to view the computational model used by spreadsheets is as a form of constraint system. From this point of view, the values of cells are constrained by equations. Because the system ....

Hudson, S. E., "Incremental Attribute Evaluation: A Flexible Algorithm for Lazy Update", ACM Transactions on Programming Languages and Systems, v13, n3, pp. 315-341, July 1991.


Integrating Pointer Variables into One-Way Constraint Models - Brad Vander Zanden (1994)   (15 citations)  (Correct)

No context found.

Scott E. Hudson. "Incremental Attribute Evaluation: A Flexible Algorithm for Lazy Update". ACM TOPLAS 13, 3 (July 1991), 315-341.


ACM Transactions on Software Engineering and.. - Rothermel.. (2001)   (1 citation)  (Correct)

No context found.

S. Hudson. Incremental attribute evaluation: a flexible algorithm for lazy update. ACM Transactions Programming Languages and Systems, 13(3), July 1991.


Multi-way versus One-way Constraints in User Interfaces.. - Sannella, al. (1993)   (56 citations)  (Correct)

No context found.

Scott E. Hudson, `Incremental attribute evaluation: a flexible algorithm for lazy update', ACM Trans. Programming Languages and Systems, 13, (3), 315--341 (1991).

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