[Pipet Devel] Re: [Pipet Devel] overflow<->loci translation and 3 basic gui objects

Jean-Marc Valin jean-marc.valin at hermes.usherb.ca
Tue Mar 28 00:12:56 EST 2000

> It's an understatement to say that VSH is a complex system.  But from the
> user's point of view, it should be simple.  So, my motto for the development
> of the VSH GUI is K.I.S.: Keep It Simple!

Well, maybe we should have more than one GUI, or at least a GUI with a couple
"modes". There are many applications that require a different interface:
 -a GUI equivalent to something like "ls -l | awk '{print $2}' | sed 's/aa/bb/'
| sort -u > somewhere" (a la Loci)
 -a system to run complex distributed tasks (a la GMS)
 -a signal processing framework a la Matlab/Simulink/Lab View (a la Overflow)

I don't see how the same interface can handle all those correctly.

> That said, I want define 3 basic objects for the GUI.  I started out with 4
> under Loci:
>   (1) Workspace
>   (2) Locus (node)
>   (3) Connector
>   (4) Windowlet
> But thinking about this more recently, I believe (1) and (4) are the same.
> Afterall, workspaces are always in windowlets (windows) and windows always
> contain workspaces.
> So, how about this.  The 3 basic GUI objects:
>   (1) Window
>   (2) Locus (node)
>   (3) Connector
> (Note: a 'network' is a collection of nodes and probably shouldn't be
> considered a separate object by the GUI.)

Well, a network would be the equivalent of a "group" in a vector drawing app.

> This way we have wonderful nesting and recursion: Windows contain nodes, nodes
> contain connectors and windows, windows contain nodes, etc., etc.
> Okay, now this brings me to how objects are named in both Overflow and Loci.
> As we have seen, both applications are remarkably similar, varying (so it
> seems) mostly by how things are named.  Here is a quick translation between
> the two:
>   Overflow             Loci
>   --------             --------
>   Document             Windowlet/workspace
>   Network/subnet       Workflow diagram
>   Node                 Locus
>   Link                 Connector

I prefer workspace de document (which is too generic). I prefer Node though, a
month ago I had never heard the word Loci/Locus (sorry, engligh is my second
language). I don't mind Link of Connector (link is shorter, bout that's all)...
pipe, maybe?..

As for Network... we have to be careful... I Overflow (though it's not
implemented exactly that way), you can see "Network" as a base class and
"subnet", "iterator" and "threadedIterator" (possibly more later) as subclasses
of Network.

> We need to standardize on these names.  I can settle with using Overflow's
> terminology in every case except for 'document'.  Since VSH will be dealing
> with large text files often called 'documents', I think that name is
> confusing.  So, I propose we (including Overflow) change this to something
> else.
> Since the Loci equivalent to 'document' is 'windowlet' (and 'workspace'), and
> since I mention above those two can be considered the same object, I propose
> 'document' be changed to 'window'.
> Also, I'm not sure whether I like 'link' or 'connector' better.  What do you
> guys like?  We could also consider 'line' and 'branch'.
> So, maybe VSH could use the following (basic and collective) object names:
>   Overflow             Loci                   VSH
>   --------             --------               ---------
>   Document             Windowlet/workspace    Window
>   Network/subnet       Workflow diagram       Network
>   Node                 Locus                  Node
>   Link                 Connector              Link (or connector)


Jean-Marc Valin
Universite de Sherbrooke - Genie Electrique
valj01 at gel.usherb.ca

More information about the Pipet-Devel mailing list