Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Alan Borning

dblp:b/AlanBorning · DBLP profile ↗
← Back
48ranked-venue papers
20as first author
0since 2021 · last 2019
0009-0002-3109-2967ORCID · verified

Domains — the database's venue-derived domains; a paper can count in several

Human-computer interaction and ubiquitous computing · 19 · 7 first-authorSoftware engineering, systems software and programming languages · 18 · 7 first-authorArtificial intelligence and machine learning · 8 · 5 first-authorGraphics, computer vision, multimedia, augmented reality and games · 8 · 6 first-authorDatabases, data management, data science and information retrieval · 3Security and privacy · 1Theory of computation · 1 · 1 first-authorApplied, interdisciplinary, general and emerging computing · 1

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Human-computer interaction and pervasive computing
21 papers
Collaborative and social computing · 25% Design research and methods · 25% Accessibility and assistive technology · 21%
Software engineering, system software, and programming languages
14 papers
Programming languages and type systems · 82% Software testing · 15% Program analysis · 2%
Network and information security
1 paper
Cyber-physical and IoT security · 50% Usable security · 50%
Computer graphics and multimedia
3 papers
Virtual and augmented reality · 73% Geometric modeling and processing · 20% Visualization and visual analytics · 7%

Topics — the 30 heaviest of 59, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Design research and methods › design ethics
value sensitive design
0.632019
Making Sense of Art: Access for Gallery Visitors with Vision Impairments · CHI 2019
Next steps for value sensitive design · CHI 2012
Fine-grained sharing of sensed physical activity: a value sensitive approach · UbiComp 2013
Programming languages and type systems
language design
0.222015
Checks and balances: constraint solving without surprises in object-constraint programming languages · OOPSLA 2015
A Type Declaration and Inference System for Smalltalk · POPL 1982
Programming languages and type systems › language semantics
formal semantics
0.212015
Checks and balances: constraint solving without surprises in object-constraint programming languages · OOPSLA 2015
Programming languages and type systems
language semantics
0.212015
Checks and balances: constraint solving without surprises in object-constraint programming languages · OOPSLA 2015
Collaborative and social computing
crowdsourcing
0.212014
Integrating on-demand fact-checking with public dialogue · CSCW 2014
Health and well-being technologies
personal informatics
0.212013
Fine-grained sharing of sensed physical activity: a value sensitive approach · UbiComp 2013
Human-robot interaction
active listening
0.112012
Is this what you meant?: promoting listening on the web with reflect · CHI 2012
Collaborative and social computing › computer-mediated communication
online discussion
0.112012
Is this what you meant?: promoting listening on the web with reflect · CHI 2012
Virtual and augmented reality › virtual environment
virtual tours
0.112019
Making Sense of Art: Access for Gallery Visitors with Vision Impairments · CHI 2019
Smart cities and intelligent transportation
public transit
0.112010
OneBusAway: results from providing real-time arrival information for public transit · CHI 2010
Cyber-physical and IoT security › medical device security
implantable medical device security
0.112010
Patients, pacemakers, and implantable defibrillators: human values and security for wireless implantable medical devices · CHI 2010
Collaborative and social computing › civic engagement
civic technology
0.122014
Integrating on-demand fact-checking with public dialogue · CSCW 2014
Supporting reflective public thought with ConsiderIt · CSCW 2012
Software testing
automated testing
0.112006
Automated testing of stochastic systems: a statistically grounded approach · ISSTA 2006
Software testing
statistical testing
0.112006
Automated testing of stochastic systems: a statistically grounded approach · ISSTA 2006
User interface design and tools › constraint-based user interface
constraint-based layout
0.021997
Solving Linear Arithmetic Constraints for User Interface Applications · ACM Symposium on User Interface Software and Technology 1997
Indigo: A Local Propagation Algorithm for Inequality Constraints · ACM Symposium on User Interface Software and Technology 1996
Geometric modeling and processing › shape representation
vector graphics
0.012001
A constraint extension to scalable vector graphics · WWW 2001
Programming languages and type systems › domain-specific languages
constraint language
0.012001
A constraint extension to scalable vector graphics · WWW 2001
User interface design and tools › layout design
web page layout
0.011999
Constraint Cascading Style Sheets for the Web · ACM Symposium on User Interface Software and Technology 1999
Software testing
unit testing
0.012006
Automated testing of stochastic systems: a statistically grounded approach · ISSTA 2006
Program analysis
constraint solving
0.011997
Constraints for the Web · ACM Multimedia 1997
Design research and methods
interactive simulation
0.011993
Electronic "How Things Work" Articles: Two Early Prototypes · IEEE Trans. Knowl. Data Eng. 1993
User interface design and tools › user interface specification
declarative interface specification
0.012001
The Cassowary linear arithmetic constraint solving algorithm · ACM Trans. Comput. Hum. Interact. 2001
Collaborative and social computing › social interaction
casual interaction
0.011991
Two approaches to casual interaction over computer and video networks · CHI 1991
Programming languages and type systems › programming paradigms
constraint programming
0.031994
Implementing Constraint Imperative Programming Languages: The Kaleidospace'93 Virtual Machine · OOPSLA 1994
The Programming Language Aspects of ThingLab, a Constraint-Oriented Simulation Laboratory · ACM Trans. Program. Lang. Syst. 1981
ThingLab - An Object-Oriented System for Building Simulations Using Constraints · IJCAI 1977
User interface design and tools
web authoring
0.011997
Constraints for the Web · ACM Multimedia 1997
Mathematical optimization
linear programming
0.011997
Solving Linear Arithmetic Constraints for User Interface Applications · ACM Symposium on User Interface Software and Technology 1997
Computational complexity
constraint satisfaction
0.011996
Indigo: A Local Propagation Algorithm for Inequality Constraints · ACM Symposium on User Interface Software and Technology 1996
Programming languages and type systems › logic programming
constraint hierarchy
0.011987
Constraint Hierarchies · OOPSLA 1987
Requirements engineering and software design
constraint satisfaction
0.011987
Constraint Hierarchies · OOPSLA 1987
Automated reasoning and model checking
constraint solving
0.011987
Constraint Hierarchies · OOPSLA 1987

Methods — techniques the papers use, named apart from their topics

value-sensitive design · 1.0collaboration · 0.8co-design · 0.3semi-structured interviews · 0.3constraint solving · 0.3content analysis · 0.2motif discovery · 0.2field deployment · 0.1deployment study · 0.1critique · 0.1conceptual analysis · 0.1value sensitive design · 0.1user survey · 0.1interview study · 0.1statistical property testing · 0.1hypothesis testing · 0.1simulation · 0.0natural language generation · 0.0
YearPublicationVenuePosition
2019 Making Sense of Art: Access for Gallery Visitors with Vision Impairments
abstract
While there is widespread recognition of the need to provide people with vision impairments (PVI) equitable access to cultural institutions such as art galleries, this is not easy. We present the results of a collaboration with a regional art gallery who wished to open their collection to PVIs in the local community. We describe a novel model that provides three different ways of accessing the gallery, depending upon visual acuity and mobility: virtual tours, self-guided tours and guided tours. As far as possible the model supports autonomous exploration by PVIs. It was informed by a value sensitive design exploration of the values and value conflicts of the primary stakeholders.
Leona Holloway, Kim Marriott, Matthew Butler 0002, Alan Borning
CHI4
2018 SetCoLa: High-Level Constraints for Graph Layout
abstract
Abstract Constraints enable flexible graph layout by combining the ease of automatic layout with customizations for a particular domain. However, constraint‐based layout often requires many individual constraints defined over specific nodes and node pairs. In addition to the effort of writing and maintaining a large number of similar constraints, such constraints are specific to the particular graph and thus cannot generalize to other graphs in the same domain. To facilitate the specification of customized and generalizable constraint layouts, we contribute SetCoLa: a domain‐specific language for specifying high‐level constraints relative to properties of the backing data. Users identify node sets based on data or graph properties and apply high‐level constraints within each set. Applying constraints to node sets rather than individual nodes reduces specification effort and facilitates reapplication of customized layouts across distinct graphs. We demonstrate the conciseness, generalizability, and expressiveness of SetCoLa on a series of real‐world examples from ecological networks, biological systems, and social networks.
Jane Hoffswell, Alan Borning, Jeffrey Heer
Comput. Graph. Forum2
2015 Checks and balances: constraint solving without surprises in object-constraint programming languages
abstract
Object-constraint programming systems integrate declarative constraint solving with imperative, object-oriented languages, seamlessly providing the power of both paradigms. However, experience with object-constraint systems has shown that giving too much power to the constraint solver opens up the potential for solutions that are surprising and unintended as well as for complex interactions between constraints and imperative code. On the other hand, systems that overly limit the power of the solver, for example by disallowing constraints involving mutable objects, object identity, or polymorphic message sends, run the risk of excluding the core object-oriented features of the language from the constraint part, and consequently not being able to express declaratively a large set of interesting problem solutions. In this paper we present design principles that tame the power of the constraint solver in object-constraint languages to avoid difficult corner cases and surprising solutions while retaining the key features of the approach, including constraints over mutable objects, constraints involving object identity, and constraints on the results of message sends. We present our solution concretely in the context of the Babelsberg object-constraint language framework, providing both an informal description of the resulting language and a formal semantics for a core subset of it. We validate the utility of this semantics with an executable version that allows us to run test programs and to verify that they provide the same results as existing implementations of Babelsberg in JavaScript, Ruby, and Smalltalk.
Tim Felgentreff, Todd D. Millstein, Alan Borning, Robert Hirschfeld
OOPSLA3
2014 Where's my bus stop?: supporting independence of blind transit riders with StopInfo
abstract
Locating bus stops, particularly in unfamiliar areas, can present challenges to people who are blind or low vision. At the same time, new information technology such as smart phones and mobile devices have enabled them to undertake a much greater range of activities with increased independence. We focus on the intersection of these issues. We developed and deployed StopInfo, a system for public transit riders that provides very detailed information about bus stops with the goal of helping riders find and verify bus stop locations. We augmented internal information from a major transit agency in the Seattle area with information entered by the community, primarily as they waited at these stops. Additionally, we conducted a five week field study with six blind and low vision participants to gauge usage patterns and determine values related to independent travel. We found that StopInfo was received positively and is generally usable. Furthermore, the system supports tenets of independence; participants took public transit trips that they might not have attempted otherwise. Lastly, an audit of bus stops in three Seattle neighborhoods found that information from both the transit agency and the community was accurate.
Megan Campbell, Cynthia L. Bennett, Caitlin Bonnar, Alan Borning
ASSETS4
2014 Integrating on-demand fact-checking with public dialogue
abstract
Public dialogue plays a key role in democratic society. Such dialogue often contains factual claims, but participants and readers are left wondering what to believe, particularly when contributions to such dialogue come from a broad spectrum of the public. We explore the design space for introducing authoritative information into public dialogue, with the goal of supporting constructive rather than confrontational discourse. We also present a specific design and realization of an archetypal sociotechnical system of this kind, namely an on-demand fact-checking service integrated into a crowdsourced voters guide powered by deliberating citizens. The fact-checking service was co-designed with and staffed by professional librarians. Our evaluation examines the service from the perspectives of both users and librarians.
Travis Kriplean, Caitlin Bonnar, Alan Borning, Bo Kinney, Brian T. Gill
CSCW3
2014 Babelsberg/JS - A Browser-Based Implementation of an Object Constraint Language
Tim Felgentreff, Alan Borning, Robert Hirschfeld, Jens Lincke, Yoshiki Ohshima, Bert Freudenberg, Robert Krahn
ECOOP2
2013 Fine-grained sharing of sensed physical activity: a value sensitive approach
abstract
Personal informatics applications in a variety of domains are increasingly enabled by low cost personal sensing. Although applications capture fine-grained activity for self reflection, sharing is generally limited to high level summaries. There are potential advantages to fine-grained sharing, but also potential harms. To help investigate this complex design space, we employ Value Sensitive Design to consider whether and how to share fine grained step activity. We identify key values and value tensions, and we develop scenarios to highlight these. We then design a set of data transformations that seek to maximize the benefits while minimizing the harms of detailed sharing. These include a novel approach to interactive modification of fine grained step data, allowing people to remove private data and using motif discovery to generate realistic replacement data. Finally, we conduct semi structured interviews with 12 participants examining these scenarios and transformations. We distill results into a set of design considerations for fine-grained physical activity sharing.
Daniel A. Epstein, Alan Borning, James Fogarty
UbiComp2
2012 Next steps for value sensitive design
abstract
Questions of human values often arise in HCI research and practice. Such questions can be difficult to address well, and a principled approach can clarify issues of both theory and practice. One such approach is Value Sensitive Design (VSD), an established theory and method for addressing issues of values in a systematic and principled fashion in the design of information technology. In this essay, we suggest however that the theory and at times the presentation of VSD overclaims in a number of key respects, with the result of inhibiting its more widespread adoption and appropriation. We address these issues by suggesting four topics for next steps in the evolution of VSD: (1) tempering VSD's position on universal values; (2) contextualizing existing and future lists of values that are presented as heuristics for consideration; (3) strengthening the voice of the participants in publications describing VSD investigations; and (4) making clearer the voice of the researchers. We propose new or altered approaches for VSD that address these issues of theory, voice, and reportage.
Alan Borning, Michael J. Muller
CHI1
2012 Is this what you meant?: promoting listening on the web with reflect
abstract
A lack of support for active listening undermines discussion and deliberation on the web. We contribute a design frame identifying potential improvements to web discussion were listening more explicitly encouraged in interfaces. We explore these concepts through a novel interface, Reflect, that creates a space next to every comment where others can summarize the points they hear the commenter making. Deployments on Slashdot, Wikimedia's Strategic Planning Initiative, and a local civic effort suggest that interfaces for listening may have traction for general use on the web.
Travis Kriplean, Michael Toomim, Jonathan T. Morgan, Alan Borning, Amy J. Ko
CHI4
2012 Supporting reflective public thought with ConsiderIt
abstract
We present a novel platform for supporting public deliberation on difficult decisions. ConsiderIt guides people to reflect on tradeoffs and the perspectives of others by framing interactions around pro/con points that participants create, adopt, and share. ConsiderIt surfaces the most salient pros and cons overall, while also enabling users to drill down into the key points for different groups. We deployed ConsiderIt in a contentious U.S. state election, inviting residents to deliberate on nine ballot measures. We discuss ConsiderIt's affordances and limitations, enriched with empirical data from this deployment. We show that users often engaged in normatively desirable activities, such as crafting positions that recognize both pros and cons, as well as points written by people who do not agree with them.
Travis Kriplean, Jonathan T. Morgan, Deen Freelon, Alan Borning, W. Lance Bennett
CSCW4
2011 Enhancing independence and safety for blind and deaf-blind public transit riders
abstract
Blind and deaf-blind people often rely on public transit for everyday mobility, but using transit can be challenging for them. We conducted semi-structured interviews with 13 blind and deaf-blind people to understand how they use public transit and what human values were important to them in this domain. Two key values were identified: independence and safety. We developed GoBraille, two related Braille-based applications that provide information about buses and bus stops while supporting the key values. GoBraille is built on MoBraille, a novel framework that enables a Braille display to benefit from many features in a smartphone without knowledge of proprietary, device-specific protocols. Finally, we conducted user studies with blind people to demonstrate that GoBraille enables people to travel more independently and safely. We also conducted co-design with a deaf-blind person, finding that a minimalist interface, with short input and output messages, was most effective for this population.
Shiri Azenkot, Sanjana Prasain, Alan Borning, Emily Fortuna, Richard E. Ladner, Jacob O. Wobbrock
CHI3
2010 Patients, pacemakers, and implantable defibrillators: human values and security for wireless implantable medical devices
abstract
Implantable medical devices (IMDs) improve patients' quality of life and help sustain their lives. In this study, we explore patient views and values regarding their devices to inform the design of computer security for wireless IMDs. We interviewed 13 individuals with implanted cardiac devices. Key questions concerned the evaluation of 8 mockups of IMD security systems. Our results suggest that some systems that are technically viable are nonetheless undesirable to patients. Patients called out a number of values that affected their attitudes towards the systems, including perceived security, safety, freedom from unwanted cultural and historical associations, and self-image. In our analysis, we extend the Value Sensitive Design value dams and flows technique in order to suggest multiple, complementary systems; in our discussion, we highlight some of the usability, regulatory, and economic complexities that arise from offering multiple options. We conclude by offering design guidelines for future security systems for IMDs.
Tamara Denning, Alan Borning, Batya Friedman, Brian T. Gill, Tadayoshi Kohno, William H. Maisel
CHI2
2010 OneBusAway: results from providing real-time arrival information for public transit
abstract
Public transit systems play an important role in combating traffic congestion, reducing carbon emissions, and promoting compact, sustainable urban communities. The usability of public transit can be significantly enhanced by providing good traveler information systems. We describe OneBusAway, a set of transit tools focused on providing real-time arrival information for Seattle-area bus riders. We then present results from a survey of OneBusAway users that show a set of important positive outcomes: strongly increased overall satisfaction with public transit, decreased waiting time, increased transit trips per week, increased feelings of safety, and even a health benefit in terms of increased distance walked when using transit. Finally, we discuss the design and policy implications of these results and plans for future research in this area.
Brian Ferris, Kari E. Watkins, Alan Borning
CHI3
2010 Parenting from the pocket: value tensions and technical directions for secure and private parent-teen mobile safety
abstract
An increasing number of high-tech devices, such as driver monitoring systems and Internet usage monitoring tools, are advertised as useful or even necessary for good parenting of teens. Simultaneously, there is a growing market for mobile personal safety devices. As these trends merge, there will be significant implications for parent-teen relationships, affecting domains such as privacy, trust, and maturation. Not only the teen and his or her parents are affected; other important stakeholders include the teen's friends who may be unwittingly monitored. This problem space, with less clear-cut assets, risks, and affected parties, thus lies well outside of more typical computer security applications.To help understand this problem domain and what, if anything, should be built, we turn to the theory and methods of Value Sensitive Design, a systematic approach to designing for human values in technology. We first develop value scenarios that highlight potential issues, benefits, harms, and challenges. We then conducted semi-structured interviews with 18 participants (9 teens and their parents). Results show significant differences with respect to information about: 1) internal state (e.g., mood) versus external environment (e.g., location) state; 2) situation (e.g., emergency vs. non-emergency); and 3) awareness (e.g., notification vs. non-notification). The value scenario and interview results positioned us to identify key technical challenges -- such as strongly protecting the privacy of a teen's contextual information during ordinary situations but immediately exposing that information to others as appropriate in an emergency -- and corresponding architectural levers for these technologies.In addition to laying a foundation for future work in this area, this research serves as a prototypical example of using Value Sensitive Design to explicate the underlying human values in complex security domains.
Alexei Czeskis, Ivayla Dermendjieva, Hussein Yapit, Alan Borning, Batya Friedman, Brian T. Gill, Tadayoshi Kohno
SOUPS4
2006 Automated testing of stochastic systems: a statistically grounded approach
abstract
Automated tests can play a key role in ensuring system quality in software development. However, significant problems arise in automating tests of stochastic algorithms. Normally, developers write tests that simply check whether the actual result is equal to the expected result (perhaps within some tolerance). But for stochastic algorithms, restricting ourselves in this way severely limits the kinds of tests we can write: either to trivial tests, or to fragile and hard-tounderstand tests that rely on a particular seed for a random number generator. A richer and more powerful set of tests is possible if we accommodate tests of statistical properties of the results of running an algorithm many times. The work described in this paper has been done in the context of a real-world application, a large-scale simulation of urban development designed to inform major decisions about land use and transportation. We describe our earlier experience with using automated testing for this system, in which we took a conventional approach, and the resulting difficulties. We then present a statistically based approach for testing stochastic algorithms based on hypothesis testing. Three different ways of constructing such tests are given, which cover the most commonly used distributions. We evaluate these tests in terms of frequency of failing when they should and when they should not, and conclude with guidelines and practical suggestions for implementing such unit tests for other stochastic applications.
Hana Sevcikova, Alan Borning, David Socha, Wolf-Gideon Bleek
ISSTA2
2005 Informing Public Deliberation: Value Sensitive Design of Indicators for a Large-scale Urban Simulation
Alan Borning, Batya Friedman, Janet Davis, Peyina Lin
ECSCW1
2001 Solving Disjunctive Constraints for Interactive Graphical Applications
Kim Marriott, Peter Moulder, Peter J. Stuckey, Alan Borning
CP4
2001 A constraint extension to scalable vector graphics
abstract
Abstract Scalable Vector Graphics (SVG) is a language that describestwo-dimensional vector graphics for storage and distribution
Greg J. Badros, Jojada J. Tirtowidjojo, Kim Marriott, Bernd Meyer 0001, Will Portnoy, Alan Borning
WWW6
2001 The Cassowary linear arithmetic constraint solving algorithm
abstract
Linear equality and inequality constraints arise naturally in specifying many aspects of user interfaces, such as requiring that one window be to the left of another, requiring that a pane occupy the leftmost third of a window, or preferring that an object be contained within a rectangle if possible. Previous constraint solvers designed for user interface applications cannot handle simultaneous linear equations and inequalities efficiently. This is a major limitation, as such systems of constraints arise often in natural declarative specifications. We describe Cassowary---an incremental algorithm based on the dual simplex method, which can solve such systems of constraints efficiently. We have implemented the algorithm as part of a constraint-solving toolkit. We discuss the implementation of the toolkit, its application programming interface, and its performance.
Greg J. Badros, Alan Borning, Peter J. Stuckey
ACM Trans. Comput. Hum. Interact.2
2000 Constraints for Interactive Graphical Applications
Alan Borning
CP1
2000 Constraint-based document layout for the Web
Alan Borning, Richard Kuang-Hsu Lin, Kim Marriott
Multim. Syst.1
1999 Constraint Cascading Style Sheets for the Web
abstract
Cascading Style Sheets have been introduced by the W3C as a mechanism for controlling the appearance of HTML documents. In this paper, we demonstrate how constraints provide a powerful unifying formalism for declaratively understanding and specifying style sheets for web documents. With constraints we can naturally and declaratively specify complex behavior such as inheritance of properties and cascading of conflicting style rules. We give a detailed description of a constraint-based style sheet model, CCSS, which is compatible with virtually all of the CSS 2.0 specification. It allows more flexible specification of layout, and also allows the designer to provide multiple layouts that better meet the desires of the user and environmental restrictions. We also describe a prototype extension of the Amaya browser that demonstrates the feasibility of CCSS.
Greg J. Badros, Alan Borning, Kim Marriott, Peter J. Stuckey
ACM Symposium on User Interface Software and Technology2
1997 Compiling Constraint Solving using Projection
Warwick Harvey, Peter J. Stuckey, Alan Borning
CP3
1997 Constraints for the Web
abstract
Constraints can be used to specify the desired layout of a web document, and also the behaviour of embedded applets.We present a system architecture in which both the author and the viewer can impose page layout constraints, some required and some preferential.The final appearance of the web page is thus the result of negotiation between author and viewer, where this negotiation is carried out by solving the set of required and preferential constraints imposed by both parties.We identify two plausible system architectures, based on different ways of dividing the work of constraint solving between web server and web client.Finally, we describe an implementation of a prototype constraintbased web authoring system and viewer, which also provides constraint-based embedded applets.
Alan Borning, Richard Kuang-Hsu Lin, Kim Marriott
ACM Multimedia1
1997 Solving Linear Arithmetic Constraints for User Interface Applications
abstract
Linear equality and inequality constraints arise naturally in specifying many aspects of user interfaces, such as requiring that one window be to the left of another, requiring that a pane occupy the leftmost l/3 of a window, or preferring that an object be contained within a rectangle if possible.Current constraint solvers designed for UI applications cannot efficiently handle simultaneous linear equations and inequalities.This is a major limitation.We describe incremental algorithms based on the dual simplex and active set methods that can solve such systems of constraints efficiently.
Alan Borning, Kim Marriott, Peter J. Stuckey
ACM Symposium on User Interface Software and Technology1
1996 Indigo: A Local Propagation Algorithm for Inequality Constraints
abstract
Inequality constraints are useful for specifying various aspects of user interfaces, such as constraints that clne window is to the left of another, or that an object is contained within a rectangle.However, current local propagation constraint solvers can't handle inequality constraints.We present Indigo, an efficient local propagation algorithm for satisfying acyclic constraint hierarchies, including inequality constraints.
Alan Borning, Richard J. Anderson 0001, Bjørn N. Freeman-Benson
ACM Symposium on User Interface Software and Technology1
1995 The OTI Constraint Solver: A Constraint Library for Constructing Interactive Graphical User Interfaces
Alan Borning, Bjørn N. Freeman-Benson
CP1
1994 Constraints and Object Identity
Gus Lopez, Bjørn N. Freeman-Benson, Alan Borning
ECOOP3
1994 Implementing Constraint Imperative Programming Languages: The Kaleidospace'93 Virtual Machine
abstract
Constraint Imperative Programming (CIP) languages integrate declarative constraints with imperative state and destructive assignment, yielding a powerful new programming paradigm. However, CIP languages are difficult to implement efficiently due to complex interactions between the two donor paradigms. Neither the virtual machines for classical object-oriented languages, nor those for existing constraint languages, are suitable for implementing CIP languages, as each assumes a purely imperative or a purely declarative computation model. We have developed a new virtual machine for CIP languages, the K-machine, an imperative machine with an incremental constraint solver and a constraint-based, rather than value-based, data store. This virtual machine allows user-defined constraints to be defined using constraint constructor definitions which are the CIP analog to method definitions. Similar to methods, these constructors are able to reference variables indirectly through many levels of pointers. The K-machine maintains relations between objects in the presence of state change to these indirectly referenced objects. The K-machine is capable of supporting a wide variety of CIP languages, including our most recent: Kaleidoscope'93.
Gus Lopez, Bjørn N. Freeman-Benson, Alan Borning
OOPSLA3
1993 Multi-way versus One-way Constraints in User Interfaces: Experience with the DeltaBlue Algorithm
abstract
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.
Michael Sannella, John Maloney, Bjørn N. Freeman-Benson, Alan Borning
Softw. Pract. Exp.4
1993 Electronic "How Things Work" Articles: Two Early Prototypes
abstract
The electronic encyclopedia exploratorium (E/sup 3/) is a vision of a future computer system-an electronic book describing how thing work. Typical articles in E/sup 3/ will describe such mechanisms as compression refrigerators, engines, telescopes, and mechanical linkages. Each article will provide simulations, three-dimensional animated graphics that the user can manipulate, laboratory areas that allow a user to modify the device or experiment with related artifacts, and a facility for asking questions and receiving customized, computer-generated English-language explanations. Some of the foundational technology is discussed, focusing on topics in artificial intelligence, graphics, and user interfaces. The initial prototype system and the technical lessons learned from it, as well as the second prototype currently under construction, are described.>
Franz G. Amador, Deborah Berman, Alan Borning, Tony DeRose, Adam Finkelstein, Dorothy Neville, David Notkin, David Salesin, Michael Salisbury, Joe Sherman, Daniel S. Weld, Georges Winkenbach
IEEE Trans. Knowl. Data Eng.3
1992 Integrating Constraints with an Object-Oriented Language
Bjørn N. Freeman-Benson, Alan Borning
ECOOP2
1991 Two approaches to casual interaction over computer and video networks
abstract
Article Free Access Share on Two approaches to casual interaction over computer and video networks Authors: Alan Borning Rank Xerox EuroPARC, 61 Regent Street, Cambridge CB2 1AB, United Kingdom Rank Xerox EuroPARC, 61 Regent Street, Cambridge CB2 1AB, United KingdomView Profile , Michael Travers Rank Xerox EuroPARC, 61 Regent Street, Cambridge CB2 1AB, United Kingdom Rank Xerox EuroPARC, 61 Regent Street, Cambridge CB2 1AB, United KingdomView Profile Authors Info & Claims CHI '91: Proceedings of the SIGCHI Conference on Human Factors in Computing SystemsApril 1991 Pages 13–19https://doi.org/10.1145/108844.108847Published:01 March 1991Publication History 62citation667DownloadsMetricsTotal Citations62Total Downloads667Last 12 Months38Last 6 weeks5 Get Citation AlertsNew Citation Alert added!This alert has been successfully added and will be sent to:You will be notified whenever a record that you have chosen has been cited.To manage your alert preferences, click on the button below.Manage my AlertsNew Citation Alert!Please log in to your account Save to BinderSave to BinderCreate a New BinderNameCancelCreateExport CitationPublisher SiteeReaderPDF
Alan Borning, Michael Travers
CHI1
1989 Constraint Hierarchies and Logic Programming
Alan Borning, Michael J. Maher, Amy Martindale, Molly Wilson
ICLP1
1989 Constraint Technology fur User-Interface Construction in ThingLab II
abstract
ThingLab II is an object-oriented constraint programming system designed specifically for interactive user interface construction and implemented in Smalltalk-80 For constraints to be effective in building user interfaces, they must not impede the responsiveness of the user interface either at run time or during construction. The necessary speed is attained in ThingLab II by making judicious tradeoffs between compilation and interpretation, and by using a fast, incremental algorithm for constraint satisfaction. The resulting system allows user interface components to be assembled, tested, and modified expediently while maintaining interactive responsiveness.
John Maloney, Alan Borning, Bjørn N. Freeman-Benson
OOPSLA2
1987 Deltatalk: An Empirically and Aesthetically Motivated Simplification of the Smalltalk-80 Language
Alan Borning
ECOOP1
1987 Constraint Hierarchies
abstract
Constraints describe relations that must be maintained, and provide a useful tool for such applications as interactive simulations, algorithm animation, and graphical user interface construction. We describe a major overhaul and extension to the constraint satisfaction mechanism in ThingLab, a constraint-oriented simulation laboratory written in the Smalltalk-80 language. First, a specification is presented of constraint hierarchies. Such hierarchies include both required constraints and default constraints of differing strengths, thus adding considerable expressive power to the system. Second, an algorithm for satisfying constraint hierarchies is described. The new satisfier is substantially faster than the previous version, even though it also includes new functionality.
Alan Borning, Robert Duisberg, Bjørn N. Freeman-Benson, Axel Kramer, Michael Woolf
OOPSLA1
1986 Defining constraints graphically
Alan Borning
CHI1
1986 The Future of Object-Oriented Languages - Panel
Jim Anderson, Nori Suzuki, Alan Borning, Mark Stefik, Dave A. Thomas, Henry Lieberman
OOPSLA3
1986 Graphically Defining New Building Blocks in ThingLab
abstract
ThingLab is a constraint-oriented, interactive graphical system for building simulations. A typical problem in ThingLab (and in systems like it) is that, to define an object with a new kind of constraint, the user must leave the graphical domain and write code in the underlying implementation language. This makes it difficult for less experienced users to add new kinds of constraints or to modify existing ones. As a step toward solving this problem, the system described here allows the graphical definition of objects that include new kinds of constraints. This is supported by an interface in which a user can open two views on an object being defined, a use view and a construction view. The use view shows the object's normal appearance; the construction view contains additional objects and constraints, which serve to graphically specify the new constraints on the defined object.
Alan Borning
Hum. Comput. Interact.1
1986 Constraint-Based Tools for Building User Interfaces
abstract
A constraint describes a relation that must be maintained. Constraints provide a useful mechanism to aid in the construction of interactive graphical user interfaces. They can be used to maintain consistency between data and a view of the data, to maintain consistency among multiple views, to specify layout, and to specify relations between events and responses for describing animations of interactive systems and event-driven simulations. Object-oriented techniques for constraint representation and satisfaction are presented, and a range of examples that demonstrate the practical use of static and temporal constraints for such purposes is presented. These examples include animations of algorithms and physics simulations, and constructing user-interface elements such as file browsers, views onto statistical data, and an interactive monitor or a simulated operating system.
Alan Borning, Robert Duisberg
ACM Trans. Graph.1
1985 A Prototype Electronic Encyclopedia
abstract
We describe a prototype electronic encyclopedia implemented on a powerful personal computer, in which user interface, media presentation, and knowledge representation techniques are applied to improving access to a knowledge resource. In itself, an electronic encyclopedia is an important information resource, but this work also illustrates the issues and approaches for many types of electronic information retrieval environments. In the prototype we make dynamic use of the structure and semantics of the text articles and index of an existing encyclopedia, while experimenting with other forms of representation, such as simulation and videodisc images. We present a long-term vision of an intelligent user-interface agent; summarize previous work related to futuristic encyclopedias, electronic books, decision support systems, and knowledge libraries; and outline current and potential research directions.
Stephen A. Weyer, Alan Borning
ACM Trans. Inf. Syst.2
1983 Knoesphere: Building Expert Systems With Encyclopedic Knowledge
Douglas B. Lenat, Alan Borning, David W. McDonald, Craig Taylor, Steven Weyer
IJCAI2
1982 Multiple Inheritance in Smalltalk-BO
Alan Borning, Daniel H. H. Ingalls
AAAI1
1982 A Type Declaration and Inference System for Smalltalk
abstract
An experimental system for declaring and inferring type in Smalltalk is described. (In the current Smalltalk language, the programmer supplies no type declarations.) The system provides the benefits of type declaration in regard to compile-time checking and documentation, while still retaining Smalltalk's flexibility. A type hierarchy, which is integrated with the existing Smalltalk class hierarchy, allows one type to inherit the traits of another type. A type may also have parameters, which are in turn other types.
Alan Borning, Daniel H. H. Ingalls
POPL1
1981 Using Matching in Algebraic Equation Solving
Alan Borning, Alan Bundy
IJCAI1
1981 The Programming Language Aspects of ThingLab, a Constraint-Oriented Simulation Laboratory
abstract
article Free Access Share on The Programming Language Aspects of ThingLab, a Constraint-Oriented Simulation Laboratory Author: Alan Borning Department of Computer Science, FR-35, University of Washington, Seattle, WA Department of Computer Science, FR-35, University of Washington, Seattle, WAView Profile Authors Info & Claims ACM Transactions on Programming Languages and SystemsVolume 3Issue 4Oct. 1981 pp 353–387https://doi.org/10.1145/357146.357147Published:01 October 1981Publication History 570citation1,242DownloadsMetricsTotal Citations570Total Downloads1,242Last 12 Months119Last 6 weeks41 Get Citation AlertsNew Citation Alert added!This alert has been successfully added and will be sent to:You will be notified whenever a record that you have chosen has been cited.To manage your alert preferences, click on the button below.Manage my Alerts New Citation Alert!Please log in to your account Save to BinderSave to BinderCreate a New BinderNameCancelCreateExport CitationPublisher SiteeReaderPDF
Alan Borning
ACM Trans. Program. Lang. Syst.1
1977 ThingLab - An Object-Oriented System for Building Simulations Using Constraints
Alan Borning
IJCAI1