[comp.sys.amiga] the good old "tools vs. integrated systems" debate.

rminnich@udel.EDU (Ron Minnich) (02/28/88)

Personally i like to build with tools. But on the other hand
the Unix tool-building methodology has kind of given tools a 
bad name lately- the interface from program to program (byte pipe)
is just too lacking to allow you to build an interactive system
from simple tools- at least one that people want to use. 
   On the other hand the Amiga rom kernel supports a more sophisticated
ipc mechanism. We ought to be able to build tools-based integrated systems!
Take a look at HaiCalc; the bar graph menu item activates a process.
Best recent examples: dnet and/or amigatcp, which allow you to 
interact with individual processes which all tied together are more than
the equal of all-in-one programs such as vt100. On Dnet for example
you can have amiga programs emulating different types of terminals
running while you have ftp and/or kermit and/or zmodem running too
(conceivably- no body has written the servers yet!)
   Now for a challenge. Can we build a tools-based system that is the 
equal of Hypercard in its capabilities. I did not say the same thing, 
but something as capable. Hypercard's capabilities are neat, but i 
find myself put off by the 'one big program' approach. Can such a system
be built some other way? An interesting challenge, i think.
(P.S. and besides, i think the script language is gross- reminds
  me of Cobol!)

-- 
ron (rminnich@udel.edu)

page@swan.ulowell.edu (Bob Page) (02/29/88)

rminnich@udel.EDU (Ron Minnich) wrote:
>Can we build a tools-based system that is the equal of Hypercard
>in its capabilities.

Microfiche Filer with an AREXX interface.  Wouldn't that be heaven!

..Bob
-- 
Bob Page, U of Lowell CS Dept.  page@swan.ulowell.edu  ulowell!page
"I don't know such stuff.  I just do eyes."  -- from 'Blade Runner'

pete@violet.berkeley.edu ( Pete Goodeve ) (03/03/88)

-----------------------------------------------------

Ron Minnich (rminnich@udel.EDU) writes:
>  [...discusses Unix tools as useful but very limited...]
>    On the other hand the Amiga rom kernel supports a more sophisticated
> ipc mechanism. We ought to be able to build tools-based integrated systems!
>  [.....]
> Best recent examples: dnet and/or amigatcp, which allow you to
> interact with individual processes which all tied together are more than
> the equal of all-in-one programs such as vt100. [.......]
>  [.....]
>    Now for a challenge. Can we build a tools-based system that is the
> equal of Hypercard in its capabilities. I did not say the same thing,
> but something as capable. Hypercard's capabilities are neat, but i
> find myself put off by the 'one big program' approach. Can such a system
> be built some other way? An interesting challenge, i think.

I'm GLAD someone finally got around to mentioning this idea on the net.
My feeling has always been that the Amiga and multitasking should obsolete
the "integrated" approach.  Much better to have small modular programs that
work together to do exactly what a user wants.  Like Ron says: the "tool
based" approach, but using the full power of the message mechanism (as well
as pipes and so on, no doubt -- use them where they suit the job).

With an integrated monster, you're stuck with the notions of those who
designed the thing: with modules, just chuck out the ones that don't suit
and (hopefully!) replace them with better ones from someone else.  All that
the programs have to have is a common language of interaction.

And that's the sticker of course... At the moment we have no common
concepts of what sort of messages should pass between programs.  I don't
think this is a trivial matter.  It needs thought -- at several levels.

At the low end, we need an explicit protocol for managing communication
between independent programs via ports -- FindPort isn't quite sufficient,
and anyway some programs (like VideoScape-3D!) manage to get even the
basics wrong.  I want to expand on this in a later message (or two), but
I'm going to start a separate thread, because I hope it will generate lots
of discussion.

Higher up, we have to make some guidelines on message content.  It's fine
to say that in principle we can send ANYTHING, but the program I develop
has to know what to expect from yours, or we're back to chaos.  I suspect
something as simple as a byte count and four-character ID (a la IFF) would
do for a start.  From earlier discussions I'm sure that Jim Mackraz will
have some input on this topic.

Oh, and by the way: this is not exactly a scheme that we can work on at our
leisure and eventually spring on an astonished world.  It would be nice to
be first, but that ain't possible... There is a certain operating system
that goes by the name of "Windows" that happens to have buried in it a
thing called "DDE" (Dynamic Data Environment).  Strangely it doesn't seem
to have had much publicity yet -- I've only come across one article (in the
January issue of Personal Computer World -- which may be hard to come by on
this side of the Atlantic).  There has been at least one other, I know, by
Bill Gates himself, but I can't remember where.  [Chuck McManis, you were
the one who brought that to our attention -- where was it?]  You can also
find a full description in "A Programmer's Guide to Windows" from Sybex.
Anyhow, in short it's an interprogram message passing scheme very close to
the sort of thing I've been thinking of for the Amiga.  Well thought out,
but I think we can do better.  Let's get cracking, folks...

                                    -- Pete --

[BTW: if we do get a discussion going in this, may I have the temerity to
suggest that we start threads with Subject headers beginning with the
string "IPC", followed with some identification of the exact topic.  That
would make it easier to follow a conversation.  The original Subject was a
good grabber, but a bit long for a continued discussion maybe?]

_______________________________________________________________________

ejkst@cisunx.UUCP (Eric J. Kennedy) (03/04/88)

In article <7335@agate.BERKELEY.EDU>, pete@violet.berkeley.edu ( Pete Goodeve ) writes:
< -----------------------------------------------------
< 
< Ron Minnich (rminnich@udel.EDU) writes:
< >  [...discusses Unix tools as useful but very limited...]
< >    On the other hand the Amiga rom kernel supports a more sophisticated
< > ipc mechanism. We ought to be able to build tools-based integrated systems!
< >  [.....]
< > Best recent examples: dnet and/or amigatcp, which allow you to
< > interact with individual processes which all tied together are more than
< > the equal of all-in-one programs such as vt100. [.......]
< >  [.....]
< >    Now for a challenge. Can we build a tools-based system that is the
< > equal of Hypercard in its capabilities. I did not say the same thing,
< > but something as capable. Hypercard's capabilities are neat, but i
< > find myself put off by the 'one big program' approach. Can such a system
< > be built some other way? An interesting challenge, i think.
< 
< I'm GLAD someone finally got around to mentioning this idea on the net.
< My feeling has always been that the Amiga and multitasking should obsolete
< the "integrated" approach.  Much better to have small modular programs that
< work together to do exactly what a user wants.  Like Ron says: the "tool
< based" approach, but using the full power of the message mechanism (as well
< as pipes and so on, no doubt -- use them where they suit the job).
 
I thought that ARexx does just this kind of thing, if an application
supports it.  Now, I don't have it, I just remember reading about it
here, so I might be all wet.  If I am, somebody throw me a towel...

-- 
------------
Eric Kennedy
ejkst@cisunx.UUCP

pete@violet.berkeley.edu ( Pete Goodeve ) (03/06/88)

cmcmanis@sun.UUCP (Chuck McManis) writes:

 > [Note I'm trying to move the discussion to comp.sys.amiga.tech]

 ... agreed.  I'm headed over there. What about the rest of you folks?

[My follow ups are in "Subject: IPC..." in comp.sys.amiga.tech]

pete@violet.berkeley.edu (03/06/88)

Okay -- so I had to change my mind in a hurry... Apparently
comp.sys.amiga.tech doesn't really exist after all, so ignore my last
message!  You'll find my two IPC proposal articles probably somewhere
shortly before this one.

				-- Pete --