Questions or comments

Brian Rice
Sun Mar 25 17:16:02 2001

Hi all,
It's been a few days since I released the last set of code. I know 
that Fare just got back from a trip and a lot of college students on 
the list are taking a break. Anyway, I'm wondering who's taken the 
chance to look into the Arrow code snapshot, and if so, what 
questions you might have about it.

I can definitely tell you where the code is going, at least. Right 
now I am working out the addition of a major set of classes to 
support categories and lattices and groups: basically algebraic 
frameworks. There are some graph types that will complement those 
that I will also add.

In addition, Squeak now has a package (not put into the release yet) 
that handles the drawing and conceptual management of diagrams with 
arrows and comments and notations which is ideal for making a visual 
front-end to the Arrow package. (It's also been used for a UML CASE 
tool). So I'm working through the process of using that for a 
graphical front-end. This will take longer, but once that is done, 
Arrows should be generally usable to the average programmer.

A lot of the other plans are detailed in the various TODO notes that 
I've put in strategic spots in the source code and the overall 
comment structure.

Ultimately, I see this going in the direction of making Arrows 
directly usable to perform transformations on data structures, either 
partially or in full, through bridges to primitive and derived Squeak 
data types, and relying on Squeak for the rest of the support. It 
should also be possible to create a mini-programming language for 
arrows using a lisp parser (which I discussed 2 years ago or so) with 
an interactive command environment, using graphical display to view 

That's quite a set of goals, but they are much more definite than 
much else I have seen for Tunes, and I've been improving my Squeak 
proficiency for it.

What do you think? Does anyone else here have the time and 
proficiency to look into helping out with some of these things or 
maybe providing some user testing (or most likely something else I'm 
not even thinking of which would be even more worthwhile)?