annotate pkg-src/tree-nx/README.rtf @ 164:4e0740e5aab2

Added tag r20-3b8 for changeset 0132846995bd
author cvs
date Mon, 13 Aug 2007 09:43:39 +0200
parents 0132846995bd
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
163
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
1 {\rtf0\ansi{\fonttbl\f0\fswiss Helvetica;\f1\fmodern Ohlfs;}
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
2 \paperw9840
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
3 \paperh14020
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
4 \margl120
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
5 \margr120
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
6 \pard\tx520\tx1060\tx1600\tx2120\tx2660\tx3200\tx3720\tx4260\tx4800\tx5320\f0\b0\i0\ulnone\fs24\fc0\cf0 \
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
7
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
8 \fs36 This program is released under the terms of the GNU General Public License. Do what you want with it.\
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
9
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
10 \fs24 \
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
11 See the History.rtf file to see what this program is all about.\
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
12 \
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
13 To run, launch it from the Workspace and have it read in a .tree file (format is in ascii, as described in History.rtf). The tree will be displayed graphically. Click on a button to activate a node. When a node gets sent an activation message, it prints it's contents to stdout, which means that you will see feedback in the WorkSpace Console.\
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
14 \
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
15 And that's all there is. This program mainly serves as a programming example and a way to make available a generic Tree class. The Tree class is particularly useful for building parse trees, and subclasses could easily be made to create a recursive pretty-printer automatically. (I have used the Tree class in an optimizing compiler which deals with a subset of Pascal, and the Tree did pretty printing and three-address code generation automatically by just sending the appropriate message to the root node. It worked out quite nicely. Each subclass corresponded to a different type of programming construct¼) Also of note is the way I use a List as a display List for the line objects. Any type of object that can render itself could be placed in that list, which is part of how my gamekit deals with multiple types of sprites... and in the file parsing is an example of how a List object can be used as a stack. (It could be used as a queue, too, if you think about it. Quite a nifty object IMHO.)\
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
16 \
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
17 If you have any questions, requests, whatever, feel free to contact me.\
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
18 \
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
19 \
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
20 Don_Yacktman@byu.edu\
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
21 \
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
22 \
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
23 \
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
24 }