{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2023,9,4]],"date-time":"2023-09-04T19:06:08Z","timestamp":1693854368273},"reference-count":42,"publisher":"Association for Computing Machinery (ACM)","issue":"2","content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Comput.-Hum. Interact."],"published-print":{"date-parts":[[1994,6]]},"abstract":"Pointer variables have long been considered useful for constructing and manipulating data structures in traditional programming languages. This article discusses how pointer variables can be integrated into one-way constraint models and indicates how these constraints can be usefully employed in user interfaces. Pointer variables allow constraints to model a wide array of dynamic application behavior, simplify the implementation of structured objects and demonstrational systems, and improve the storage and efficiency of constraint-based applications. This article presents two incremental algorithms\u2014one lazy and one eager\u2014 for solving constraints with pointer variables. Both algorithms are capable of handling (1) arbitrary systems of one-way constraints, including constraints that involve cycles, and (2) editing models that allow multiple changes between calls to the constraint solver. These algorithms are fault tolerant in that they can handle and recover gracefully from formulas that crash due to programmer error. Constraints that use pointer variables have been implemented in a comprehensive user interface toolkit, Garnet, and our experience with applications written in Garnet have proven the usefulness of pointer variable constraints. Many large-scale applications have been implemented using these constraints.<\/jats:p>","DOI":"10.1145\/180171.180174","type":"journal-article","created":{"date-parts":[[2002,7,27]],"date-time":"2002-07-27T11:26:13Z","timestamp":1027769173000},"page":"161-213","update-policy":"http:\/\/dx.doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":31,"title":["Integrating pointer variables into one-way constraint models"],"prefix":"10.1145","volume":"1","author":[{"given":"Brad","family":"Vander Zanden","sequence":"first","affiliation":[{"name":"Univ. of Tennessee, Knoxville"}]},{"given":"Brad A.","family":"Myers","sequence":"additional","affiliation":[{"name":"Carnegie Mellon Univ., Pittsburgh, PA"}]},{"given":"Dario A.","family":"Giuse","sequence":"additional","affiliation":[{"name":"Carnegie Mellon Univ., Pittsburgh, PA"}]},{"given":"Pedro","family":"Szekely","sequence":"additional","affiliation":[{"name":"USC\/Information Sciences Institute, Marina del Rey, CA"}]}],"member":"320","published-online":{"date-parts":[[1994,6]]},"reference":[{"key":"e_1_2_1_1_1","volume-title":"The Design and Analysis of Computer Algorithms","author":"A~","unstructured":"A~ o, A. V., HOPCROFT , E. , AND ULLMAN , J. D. 1974. The Design and Analysis of Computer Algorithms . Addison-Wesley , Reading, Mass . A~o, A. V., HOPCROFT, E., AND ULLMAN, J. D. 1974. The Design and Analysis of Computer Algorithms. Addison-Wesley, Reading, Mass."},{"key":"e_1_2_1_2_1","volume-title":"Alduss Corp.","author":"ALDUSS.","year":"1990","unstructured":"ALDUSS. 1990 . Alduss Intellidraw . Alduss Corp. , 1990. ALDUSS. 1990. Alduss Intellidraw. Alduss Corp., 1990."},{"key":"e_1_2_1_3_1","doi-asserted-by":"crossref","unstructured":"BARTH P. 1986. An object-oriented approach to graphical interfaces. ACM Trans. Graph. 5 2 (Apr.) 142-172. 10.1145\/22949.22951 BARTH P. 1986. An object-oriented approach to graphical interfaces. ACM Trans. Graph. 5 2 (Apr.) 142-172. 10.1145\/22949.22951","DOI":"10.1145\/22949.22951"},{"key":"e_1_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.1145\/357146.357147"},{"key":"e_1_2_1_5_1","doi-asserted-by":"publisher","DOI":"10.1145\/27623.29354"},{"key":"e_1_2_1_6_1","doi-asserted-by":"crossref","first-page":"48","DOI":"10.1145\/38765.38812","volume-title":"OOPSLA'87 Conference Proceedings. AMC","author":"BORNING A.","year":"1987","unstructured":"BORNING , A. , DUIDBERO , R. , FRE i~MAN-BE NSON , B., KRAMER , A. , AND WOOLF , M. 1987 . Constraint hierarchies . In OOPSLA'87 Conference Proceedings. AMC , New York , 48 - 60 . 10.1145\/38765.38812 BORNING, A., DUIDBERO, R., FREi~MAN-BENSON, B., KRAMER, A., AND WOOLF, M. 1987. Constraint hierarchies. In OOPSLA'87 Conference Proceedings. AMC, New York, 48-60. 10.1145\/38765.38812"},{"key":"e_1_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1145\/79204.79209"},{"key":"e_1_2_1_8_1","volume-title":"Numerical Methods for Unconstrained Optimization and Nonlinear Equations","author":"DENNIS J. E.","unstructured":"DENNIS , J. E. , JR ., AND SCHNABEL , R.B. 1983. Numerical Methods for Unconstrained Optimization and Nonlinear Equations . Prentice-Hall , Englewood Cliffs, N.J. DENNIS, J. E., JR., AND SCHNABEL, R.B. 1983. Numerical Methods for Unconstrained Optimization and Nonlinear Equations. Prentice-Hall, Englewood Cliffs, N.J."},{"key":"e_1_2_1_9_1","doi-asserted-by":"crossref","first-page":"77","DOI":"10.1145\/97945.97957","volume-title":"OOPSLA\/ECOOP'90 Conference Proceedings. ACM","author":"FREEMAN-BENSON B.N.","year":"1990","unstructured":"FREEMAN-BENSON , B.N. 1990 . Kaleidoscope: Mixing objects, constraints, and imperative programming . OOPSLA\/ECOOP'90 Conference Proceedings. ACM , New York , 77 - 88 . 10.1145\/97945.97957 FREEMAN-BENSON, B.N. 1990. Kaleidoscope: Mixing objects, constraints, and imperative programming. OOPSLA\/ECOOP'90 Conference Proceedings. ACM, New York, 77-88. 10.1145\/97945.97957"},{"key":"e_1_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1145\/74878.74918"},{"key":"e_1_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1145\/76372.77531"},{"key":"e_1_2_1_13_1","doi-asserted-by":"crossref","first-page":"167","DOI":"10.1145\/62402.62429","volume-title":"ACM SIGGRAPH Symposium on User Interface Software and Technology, Proceedings UIST'88 (Banff","author":"HENRY T. R.","year":"1988","unstructured":"HENRY , T. R. AND HUDSON , S. E. 1988 . Using active data in a UIMS . In ACM SIGGRAPH Symposium on User Interface Software and Technology, Proceedings UIST'88 (Banff , Alberta, Canada). ACM, New York , 167 - 178 . 10.1145\/62402.62429 HENRY, T. R. AND HUDSON, S. E. 1988. Using active data in a UIMS. In ACM SIGGRAPH Symposium on User Interface Software and Technology, Proceedings UIST'88 (Banff, Alberta, Canada). ACM, New York, 167-178. 10.1145\/62402.62429"},{"key":"e_1_2_1_14_1","doi-asserted-by":"crossref","first-page":"225","DOI":"10.1145\/168642.168665","volume-title":"ACM SIGGRAPH Symposium on User Interface Software and Technology, Proceedings UIST'93","author":"HILL R. D.","year":"1993","unstructured":"HILL , R. D. 1993 . The Rendezvous constraint maintenance system . In ACM SIGGRAPH Symposium on User Interface Software and Technology, Proceedings UIST'93 . ACM, New York , 225 - 234 . 10.1145\/168642.168665 HILL, R. D. 1993. The Rendezvous constraint maintenance system. In ACM SIGGRAPH Symposium on User Interface Software and Technology, Proceedings UIST'93. ACM, New York, 225-34. 10.1145\/168642.168665"},{"key":"e_1_2_1_15_1","volume-title":"Languages for Developing User Interfaces, Brad A","author":"HILL R. D.","unstructured":"HILL , R. D. 1992. Languages for the construction of multi-user multi-media synchronous (MUMMS) applications . In Languages for Developing User Interfaces, Brad A . Myers, Ed. Jones and Bartlett Publishers, Boston , Mass ., 125-143. HILL, R. D. 1992. Languages for the construction of multi-user multi-media synchronous (MUMMS) applications. In Languages for Developing User Interfaces, Brad A. Myers, Ed. Jones and Bartlett Publishers, Boston, Mass., 125-143."},{"key":"e_1_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1145\/143103.143139"},{"key":"e_1_2_1_18_1","volume-title":"Languages for Developing User Interfaces","author":"HORN B.","unstructured":"HORN , B. 1992a. Properties of user interface systems and the Siri programming language . In Languages for Developing User Interfaces . Jones and Barlett Publishers , Boston, Mass ., 211-238. HORN, B. 1992a. Properties of user interface systems and the Siri programming language. In Languages for Developing User Interfaces. Jones and Barlett Publishers, Boston, Mass., 211-238."},{"key":"e_1_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1145\/141937.141955"},{"key":"e_1_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1145\/117009.117012"},{"key":"e_1_2_1_23_1","doi-asserted-by":"crossref","first-page":"105","DOI":"10.1145\/73660.73673","volume-title":"ACM SIGGRAPH Symposium on User Interface Software and Technology, Proceedtngs UIST'89","author":"HUDSON S. E.","year":"1989","unstructured":"HUDSON , S. E. 1989 . Graphical specification of flexible user interface displays . In ACM SIGGRAPH Symposium on User Interface Software and Technology, Proceedtngs UIST'89 . ACM, New York , 105 - 114 . 10.1145\/73660.73673 HUDSON, S. E. 1989. Graphical specification of flexible user interface displays. In ACM SIGGRAPH Symposium on User Interface Software and Technology, Proceedtngs UIST'89. ACM, New York, 105-114. 10.1145\/73660.73673"},{"key":"e_1_2_1_24_1","first-page":"111","volume-title":"Proceedings of the Principles of Programming Languages Conference","author":"JAFFAR J.","year":"1987","unstructured":"JAFFAR , J. AND LASSEZ , J. 1987 . Constraint logic programming . In Proceedings of the Principles of Programming Languages Conference ( Munich, Germany, Jan.) ACM, New York , 111 - 119 . 10.1145\/41625.41635 JAFFAR, J. AND LASSEZ, J. 1987. Constraint logic programming. In Proceedings of the Principles of Programming Languages Conference (Munich, Germany, Jan.) ACM, New York, 111-119. 10.1145\/41625.41635"},{"key":"e_1_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.1145\/129393.129398"},{"key":"e_1_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1145\/99902.99903"},{"key":"e_1_2_1_27_1","volume-title":"a, W","author":"LELF","year":"1900","unstructured":"LELF , a, W . 1900 . Coa~traint Programming Languages: Their Specification and Generation. Addison-Wesley , Reading, Mass. LELF, a, W. 1900. Coa~traint Programming Languages: Their Specification and Generation. Addison-Wesley, Reading, Mass."},{"key":"e_1_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.1145\/74878.74917"},{"key":"e_1_2_1_30_1","doi-asserted-by":"crossref","first-page":"127","DOI":"10.1145\/74333.74346","volume-title":"SIGGRAPH'89","author":"MAULSBY D.","year":"1989","unstructured":"MAULSBY , D. , WITTEN , I. H. , AND KITTLITZ , K. A. 1989 . Metamouse: Specifying graphical procedures by example . In SIGGRAPH'89 . ACM, New York , 127 - 136 . 10.1145\/74333.74346 MAULSBY, D., WITTEN, I. H., AND KITTLITZ, K. A. 1989. Metamouse: Specifying graphical procedures by example. In SIGGRAPH'89. ACM, New York, 127-136. 10.1145\/74333.74346"},{"key":"e_1_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.1109\/2.153286"},{"key":"e_1_2_1_32_1","first-page":"243","volume-title":"Proceedings SIGCHI'91","author":"MYERS B.A.","year":"1991","unstructured":"MYERS , B.A. 1991 . Graphical techniques in a spreadsheet for specifying user interfaces. In Human Factors in Computing Systems , Proceedings SIGCHI'91 . ACM, New York , 243 - 249 . 10.1145\/108844.108903 MYERS, B.A. 1991. Graphical techniques in a spreadsheet for specifying user interfaces. In Human Factors in Computing Systems, Proceedings SIGCHI'91. ACM, New York, 243-249. 10.1145\/108844.108903"},{"key":"e_1_2_1_33_1","volume-title":"Creating User Interfaces by Demonstration","author":"MYERS B.A.","unstructured":"MYERS , B.A. 1988. Creating User Interfaces by Demonstration . Academic Press , Boston, Mass . MYERS, B.A. 1988. Creating User Interfaces by Demonstration. Academic Press, Boston, Mass."},{"key":"e_1_2_1_34_1","doi-asserted-by":"publisher","DOI":"10.1109\/2.60882"},{"key":"e_1_2_1_35_1","doi-asserted-by":"publisher","DOI":"10.1007\/BF01900551"},{"key":"e_1_2_1_37_1","doi-asserted-by":"publisher","DOI":"10.1145\/141937.141953"},{"key":"e_1_2_1_38_1","doi-asserted-by":"crossref","first-page":"95","DOI":"10.1145\/73660.73672","volume-title":"ACM SIGGRAPH Symposium on User Interface Software and Technology, Proceedings UIST'89","author":"MYERS B. A.","year":"1989","unstructured":"MYERS , B. A. , VANDER ZANDEN , B. , AND DANNENBERG , R.B. 1989 . Creating graphical interactive application objects by demonstration . In ACM SIGGRAPH Symposium on User Interface Software and Technology, Proceedings UIST'89 . ACM, New York , 95 - 104 . 10.1145\/73660.73672 MYERS, B. A., VANDER ZANDEN, B., AND DANNENBERG, R.B. 1989. Creating graphical interactive application objects by demonstration. In ACM SIGGRAPH Symposium on User Interface Software and Technology, Proceedings UIST'89. ACM, New York, 95-104. 10.1145\/73660.73672"},{"key":"e_1_2_1_39_1","volume-title":"Proceedings ofSIGGRAPH'85","author":"NELSON G.","year":"1985","unstructured":"NELSON , G. 1985 . Juno a constraint-based graphics system. In Computer Graphics , Proceedings ofSIGGRAPH'85 . ACM, New York, 235 243. 10.1145\/325165.325241 NELSON, G. 1985. Juno a constraint-based graphics system. In Computer Graphics, Proceedings ofSIGGRAPH'85. ACM, New York, 235 243. 10.1145\/325165.325241"},{"key":"e_1_2_1_40_1","doi-asserted-by":"publisher","DOI":"10.1145\/2166.357218"},{"key":"e_1_2_1_41_1","volume-title":"The Synthesizer Generator","author":"REPS T.","unstructured":"REPS , T. AND TEITELBAUM , T. 1988. The Synthesizer Generator . Springer-Verlag , New York . REPS, T. AND TEITELBAUM, T. 1988. The Synthesizer Generator. Springer-Verlag, New York."},{"key":"e_1_2_1_47_1","volume-title":"AFIPS Spring Joint Computer Conference. AFIPS, Washington, D.C., 329-346","author":"SUTHERLAND I. E.","year":"1963","unstructured":"SUTHERLAND , I. E. 1963 . Sketchpad: A man-machine graphical communication system . In AFIPS Spring Joint Computer Conference. AFIPS, Washington, D.C., 329-346 . SUTHERLAND, I. E. 1963. Sketchpad: A man-machine graphical communication system. In AFIPS Spring Joint Computer Conference. AFIPS, Washington, D.C., 329-346."},{"key":"e_1_2_1_48_1","doi-asserted-by":"crossref","unstructured":"SZEKELY P. A. AND MYERS B.A. 1988. A user interface toolkit based on graphical objects and constraints. Sigplan Not. 23 ll (Nov.) 36-45. 10.1145\/62084.62088 SZEKELY P. A. AND MYERS B.A. 1988. A user interface toolkit based on graphical objects and constraints. Sigplan Not. 23 ll (Nov.) 36-45. 10.1145\/62084.62088","DOI":"10.1145\/62084.62088"},{"key":"e_1_2_1_49_1","doi-asserted-by":"publisher","DOI":"10.1145\/357299.357303"},{"key":"e_1_2_1_50_1","volume-title":"A domain-independent algorithm for incrementally satisfying multi-way constraints. Teeh. Rep. CS-92-160","author":"VANDER ZANDEN B. T.","unstructured":"VANDER ZANDEN , B. T. 1992. A domain-independent algorithm for incrementally satisfying multi-way constraints. Teeh. Rep. CS-92-160 , Univ. of Tennessee , Knoxville, Tenn . VANDER ZANDEN, B. T. 1992. A domain-independent algorithm for incrementally satisfying multi-way constraints. Teeh. Rep. CS-92-160, Univ. of Tennessee, Knoxville, Tenn."},{"key":"e_1_2_1_51_1","first-page":"325","volume-title":"Proceedings SIGCHI'89","author":"VANDER ZANDEN B. T.","year":"1989","unstructured":"VANDER ZANDEN , B. T. 1989 . Constraint grammars--A new model for specifying graphical applications. In Haman Factors in Computing Systems , Proceedings SIGCHI'89 . ACM, New York , 325 - 330 . 10.1145\/67449.67513 VANDER ZANDEN, B. T. 1989. Constraint grammars--A new model for specifying graphical applications. In Haman Factors in Computing Systems, Proceedings SIGCHI'89. ACM, New York, 325-330. 10.1145\/67449.67513"},{"key":"e_1_2_1_53_1","doi-asserted-by":"publisher","DOI":"10.1145\/118014.117976"},{"key":"e_1_2_1_54_1","first-page":"243","volume-title":"Computer Graphics: SIGGRAPH'90 Conference Proceedings. ACM","author":"WIT~UN A.","year":"1990","unstructured":"WIT~UN , A. AND WELCH , W. 1990 . Fast animation and control of nonrigid structures . In Computer Graphics: SIGGRAPH'90 Conference Proceedings. ACM , New York , 243 - 252 . 10.1145\/97879.565650 WIT~UN, A. AND WELCH, W. 1990. Fast animation and control of nonrigid structures. In Computer Graphics: SIGGRAPH'90 Conference Proceedings. ACM, New York, 243-252. 10.1145\/97879.565650"}],"container-title":["ACM Transactions on Computer-Human Interaction"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/180171.180174","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2022,12,29]],"date-time":"2022-12-29T18:04:59Z","timestamp":1672337099000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/180171.180174"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[1994,6]]},"references-count":42,"journal-issue":{"issue":"2","published-print":{"date-parts":[[1994,6]]}},"alternative-id":["10.1145\/180171.180174"],"URL":"http:\/\/dx.doi.org\/10.1145\/180171.180174","relation":{},"ISSN":["1073-0516","1557-7325"],"issn-type":[{"value":"1073-0516","type":"print"},{"value":"1557-7325","type":"electronic"}],"subject":[],"published":{"date-parts":[[1994,6]]},"assertion":[{"value":"1994-06-01","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}