Programming constraints by demonstration

Research output: Contribution to journalArticle

Abstract

The executable constraint is proposed to offer designers a way to define a new set of constraints on top of an editing tool. It aims mainly to maintain the integrity of data structures such as diagrams that users create, during an edit session. When a part of the structure is modified by a user, the computer modifies other parts as a consequence of the user's instructions given in advance. Executable constraints are sequences of editing operations whose fixed points give relations to be maintained. They are constructed from primitive editing operations by demonstration to avoid textual form of expression, so that non-programmers can define new relations. Priority and condition are introduced to cope with over-constrained or conditional situations.

Original languageEnglish
Pages (from-to)79-96
Number of pages18
JournalJournal of Visual Languages and Computing
Volume14
Issue number1
DOIs
Publication statusPublished - 2003 Feb

Fingerprint

Data structures
Demonstrations
Programming
Editing
Fixed Point
Diagrams
Designer
Integrity

Keywords

  • Constraint
  • Constraint solving
  • End-user programming
  • Extensible editor
  • Programming by demonstration

ASJC Scopus subject areas

  • Language and Linguistics
  • Computer Science Applications
  • Human-Computer Interaction

Cite this

Programming constraints by demonstration. / Hattori, Takashi.

In: Journal of Visual Languages and Computing, Vol. 14, No. 1, 02.2003, p. 79-96.

Research output: Contribution to journalArticle

@article{2bfffe956bfc428abc98385468c0bad6,
title = "Programming constraints by demonstration",
abstract = "The executable constraint is proposed to offer designers a way to define a new set of constraints on top of an editing tool. It aims mainly to maintain the integrity of data structures such as diagrams that users create, during an edit session. When a part of the structure is modified by a user, the computer modifies other parts as a consequence of the user's instructions given in advance. Executable constraints are sequences of editing operations whose fixed points give relations to be maintained. They are constructed from primitive editing operations by demonstration to avoid textual form of expression, so that non-programmers can define new relations. Priority and condition are introduced to cope with over-constrained or conditional situations.",
keywords = "Constraint, Constraint solving, End-user programming, Extensible editor, Programming by demonstration",
author = "Takashi Hattori",
year = "2003",
month = "2",
doi = "10.1016/S1045-926X(02)00058-7",
language = "English",
volume = "14",
pages = "79--96",
journal = "Journal of Visual Languages and Computing",
issn = "1045-926X",
publisher = "Academic Press Inc.",
number = "1",

}

TY - JOUR

T1 - Programming constraints by demonstration

AU - Hattori, Takashi

PY - 2003/2

Y1 - 2003/2

N2 - The executable constraint is proposed to offer designers a way to define a new set of constraints on top of an editing tool. It aims mainly to maintain the integrity of data structures such as diagrams that users create, during an edit session. When a part of the structure is modified by a user, the computer modifies other parts as a consequence of the user's instructions given in advance. Executable constraints are sequences of editing operations whose fixed points give relations to be maintained. They are constructed from primitive editing operations by demonstration to avoid textual form of expression, so that non-programmers can define new relations. Priority and condition are introduced to cope with over-constrained or conditional situations.

AB - The executable constraint is proposed to offer designers a way to define a new set of constraints on top of an editing tool. It aims mainly to maintain the integrity of data structures such as diagrams that users create, during an edit session. When a part of the structure is modified by a user, the computer modifies other parts as a consequence of the user's instructions given in advance. Executable constraints are sequences of editing operations whose fixed points give relations to be maintained. They are constructed from primitive editing operations by demonstration to avoid textual form of expression, so that non-programmers can define new relations. Priority and condition are introduced to cope with over-constrained or conditional situations.

KW - Constraint

KW - Constraint solving

KW - End-user programming

KW - Extensible editor

KW - Programming by demonstration

UR - http://www.scopus.com/inward/record.url?scp=0037298020&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=0037298020&partnerID=8YFLogxK

U2 - 10.1016/S1045-926X(02)00058-7

DO - 10.1016/S1045-926X(02)00058-7

M3 - Article

AN - SCOPUS:0037298020

VL - 14

SP - 79

EP - 96

JO - Journal of Visual Languages and Computing

JF - Journal of Visual Languages and Computing

SN - 1045-926X

IS - 1

ER -