home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Frozen Fish 1: Amiga
/
FrozenFish-Apr94.iso
/
bbs
/
alib
/
d1xx
/
d176
/
hypernet.lha
/
HyperNet
/
HypNet.Intro
< prev
next >
Wrap
Text File
|
1989-02-04
|
5KB
|
99 lines
HyperNet - Minimal Hypertext for VMS
Hypernet is meant as a SIMPLE and INTRODUCTIRY way to build a small
hypertext system on a VAX assuming a single terminal (or equivalent;
some folks use pc's as terminal emulators). It is also designed to
be easily ported to any reasonable (i.e., multi-tasking) architecture
with ease. (In fact, it can probably be run on an msdos machine provided
sufficient memory for an EXEC call exists.)
What's hypertext?
Hypertext is a nonlinear way of representing information.
The idea is to think of a graph with lots of boxes interconnected
with arrows.
+---------+ +-----------+ +-------+ +-------+
| A |-->| B |->| C |->| D |
| | | | | | | |
+---------+ +-----------+ +-------+ +-------+
^ | | | ^ | ^ |
| | |________ | | | _| |_
| | | | | | | |
| V V V | V | V
+---------+ +-----------+ +-------+ +-------+
| E |<----| F |--->| G |--->| H |
| |---->| |<---| |<---| |
+---------+ +-----------+ +-------+ +-------+
^ V
+----------------------------
Each of the boxes A through H can be thought of as a "node",
and from each node one can follow arrow paths to other nodes. These
nodes can store information.
Now the arrows can be thought of as coming FROM somewhere
inside each box and pointing TO somewhere inside the target boxes,
or they can just be between boxes. This is the difference between
systems like PlaneText and systems like NoteCards. In PlaneText
type systems, whatever you use to work on the box contents must
keep track of the "inside the box" parts of the network of pointers.
We don't need or want another set of editors, etc., so just treat links
as external to the boxes. HyperNet is intended to manage those links,
with some help from you in handling the database.
At each node, typically some data is displayed and made available
for action, and a set of links can be followed.
To simulate that on a windowing system which supports multiple
processes (e.g., Amiga personal workstations, or Sun workstations), the
boxes could be separate processes, and it would make sense to leave
as many of them active at a time as desired. In this simple system,
the presumption is that terminal real estate is limited, so we will
use multiple processes, but only one display.
HyperNet will let you set up a network of action nodes like
this. You include the data in a sequential file of special content,
mostly free-form, to specify node (box) names, actions, and successor
states.
At each node, once you enter it, HyperNet will execute one stored
VMS command via a spawn call. This can be either a SPAWN or a
SPAWN/NOWAIT (your option at setup).
Once the command completes (or the spawn/nowait returns),
a menu of successor states is presented and you select one of these
to move to the next action. Special number inputs exist to restart
the system at the first node (99) or to exit (98). any legal VMS
command is permitted, allowing text tools, graphics tools, numeric
tools, and anything else running on the VAX to be tied together.
Hypertext systems generally provide a means to add, change,
or remove links between nodes. In HyperNet, this is done by allowing
the file containing the net information to be edited in a command.
This avoids dependences on any particular graphics terminal, and allows
tools to handle the job graphically to be devised and used separately
as appropriate.
The format of a node's entry is
+Node Name as it appears on the menu
$VMS command to be executed (or &VMS Command to execute via spawn/nowait)
>successor node name for menu, first
>next successor node name for menu
>still more successor nodes, up to 16 maximum per menu.
These are strung together, with the choice of a successor
node being made by matching the successor node name line with the
node name line. These descriptions may be up to 127 characters long
in the file, though the menu displays only 75 characters. They must
match EXACTLY, and letter cases are SIGNIFICANT.
In order for the system to know where to start, it is required
that one node in the file have node name START (upper case). Its
action will be the first one executed, so an initialization screen
for your application is best displayed there.
HypNet asks for the filename of the file being used for the
node data, so you can have as many HyperNet networks as you like.
Improvements for HyperNet are welcome. If you make any such,
please send them to the DECUS library (or submit them to the VAX SIG
tapes) so others can access them.
Hypernet is donated to the public domain. Enjoy.
Glenn Everhart
(author)