The state of the art for Arrow specs (clarifications and additions)

Jecel Assumpcao Jr jecel@merlintec.com
Mon, 01 Nov 1999 18:26:51 -0200


Brian Rice wrote:
> Yeah, that coloring idea works for annotations for very small examples.
> When I have complicated (i.e. real-world) examples, only parts of the
> example may be seen using the color notations.  For example, arrows will
> most often be part of multiple graphs. 

Of course - putting an arrow in just two graphs would be make
a color based scheme impossible. I had first thought of drawing
a circle (as we often do for sets) to contain the car arrows
and another circle for the cdr ones. But this breaks down even
faster than the color thing.

> In cases like that, most likely the
> best way to deal with it is to work with localized views of the system
> (sort of like the ideas for replacing hierarchical browsers with a
> web-based conceptual network browser where it's easiest to work with a
> local set of connections that changes with the focus).

Like the Xanadu ZigZag browser. It shows things starting from
the current object and by mapping arbitrary dimensions along the
X and Y axis on the screen. You can either move along the shown
dimensions to neighboring objects or change the dimensions you
are looking at.

> The really rudimentary code is at
> http://www.tunes.org/~water/Abstract-Arrows.st

Thanks - I read through the code and found it easier to understand
some of the things (like what graphs and meta-graphs are) than
from the informal explanations.

> I'm going to attempt to manipulate the objects of these classes via an
> existing Lisp interpreter for Squeak, basically by crippling the parser and
> working from there on the evaluator.

This shouldn't be hard. I imagine that a Lisp in Squeak wouldn't
be much larger than what your arrow cde is so far.

-- Jecel