Integration of Macros and Constraints in Editors
Integration of Macros and Constraints in Editors
Takashi Hattori
WISS'96 発表予定.
日本ソフトウェア科学会, December 1996.
概要
The executable constraint is proposed to maintain relations among
objects intended by the user during editing. It is basically a sequence
of editing operations defined by demonstration, just like a macro
operation. It can have side effect such as creation of a new object.
The operation sequence is automatically executed when necessary, where
its semantics as a constraint is that the result is a fixed-point of the
operations. Every executable constraint has a partially ordered
priority which is used to select one among several executable
constraints competing with each other. An executable constraint can
have a condition to be satisfied and may avoid execution of
another executable constraint if its result fails to satisfy the
condition. The condition, together with priorities, allows to select
the most adequate executable constraint in the current situation. The
priorities are inferred from the user's response to the output of the
system. A user-extensible graphic editor utilizing executable
constraints is also described.