End-User computing is needed in creative artistic applications or integrated editing environments, where the activity cannot be planned in advance. Following previous works from Grame (Lion, France), Concrete abstractions (abstractions from examples), are suggested as a new mode for function definition, appropriate for end-user editor programmability.
For certain applications, the direct, associative, not planned in advance character of concrete abstraction plays a qualitative role in the mere ability to specify abstractions. In this talk we propose to use concrete abstraction as a general tool for end-user programmability in editors. We distinguish two kinds of abstractions: 'value abstraction' and 'structure abstraction', and explain how they can be combined. We describe a framework of historical editing that is based on a double view, in which the two abstraction kinds are combined. Finally, BOOMS, an implemented prototype for such an editing framework is described. BOOMS is a domain independent toolkit, with three sample instantiations. We believe that the proposed framework captures the conceptualization operation that characterizes creative, associative work types, and addresses the needs for end-user computing in integrated environments.
Joint work with Mira Balaban and Michael Elhada from Ben-Gurion University.
Host: Bob Harper
Appointments: Debbie Cavlovich
Principles of Programming Seminars