Programming by Demonstration/Example - GARNET (Lisp-based)

Massimo Dentico m.dentico@virgilio.it
Sat, 20 Jul 2002 00:36:45 +0200


Programming by Example (PbE) Home Page
    http://lieber.www.media.mit.edu/people/lieber/PBE/index.html

On-line book about PbD "Watch What I Do: Programming by Demonstration"
    http://www.acypher.com/wwid/

one of the co-editors is Henry Lieberman, his home page, with lots of paper
on UIs, is at http://lieber.www.media.mit.edu/people/lieber/

Demonstrational Interfaces Group at CMU
    http://www-2.cs.cmu.edu/~garnet/pbd-group/pbd.html

GARNET Project Home Page (Lisp based PbD)
Generating an Amalgam of Real-time, Novel Editors and Toolkits
    http://www-2.cs.cmu.edu/~garnet/

An abandoned CMU UISG project, recently resurrected as Open Source project
and now on SourceForge at http://garnetlisp.sourceforge.net/

Papers: http://www-2.cs.cmu.edu/~garnet/papers.html

An appetizer:

--------------------------------------------------------------------------------
Declarative Programming in a Prototype-Instance System:
Object-Oriented Programming Without Writing Methods

    http://www-2.cs.cmu.edu/~garnet/doc/papers/ooprogOOPSLA.ps

ABSTRACT

Most programming in the Garnet system uses a declarative style that eliminates
the need to write new methods. One implication is that the interface to objects
is typically through their data values. This contrasts significantly with other
object systems where writing methods is the central mechanism of programming.
Four features are combined in a unique way in Garnet to make this possible:

[1] the use of a prototype-instance object system with structural inheritance,
[2] a retained-object model where most objects persist,
[3] the use of constraints to tie the objects together and
[4] a new input model that makes writing event handlers unnecessary.

The result is that code is easier to write for programmers, and also easier for
tools, such as interactive, direct manipulation interface builders, to generate.
--------------------------------------------------------------------------------

Regards.

-- 
Massimo Dentico