Newsgroups: comp.sys.amiga.programmer Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!think.com!snorkelwacker.mit.edu!stanford.edu!agate!violet.berkeley.edu!pete From: pete@violet.berkeley.edu (Pete Goodeve) Subject: Re: Hyper Functionality Message-ID: <1991Apr23.091455.5375@agate.berkeley.edu> Sender: root@agate.berkeley.edu (Charlie Root) Organization: University of California, Berkeley References: <12952@pasteur.Berkeley.EDU> Date: Tue, 23 Apr 1991 09:14:55 GMT Lines: 43 In (23 Apr), Tom Limoncelli (limonce@pilot.njin.net) writes: > In article <12952@pasteur.Berkeley.EDU> navas@cory.Berkeley.EDU (David C. Navas) writes: > |> We're not just talking adding interconnectivity between apps with ARexx |> ports. Let's talk about adding functionality to existing apps by run-time, |> even call-time, binding of program functions -- which would transparently > > Congrats! You've just re-invented Tcl. Well, not exactly, [...] Uh...right. Not exactly (:-)) [I should let Dave respond -- he probably will anyway -- but I couldn't resist jumping in...] Both Dave and I are WELL aware of Tcl. We ought to be..: the author is right here in the EECS department at Berkeley! Dave has actually taken a class or two from him. I even ported the Tcl Interpreter myself to the Amiga, but only as a quick trial to see how it would work in this sort of context; I left the heavy stuff to the guys at Hackercorp. I was pleased though at how easily it DID port. > [......] It has a lot of good things in it. I'd almost prefer it > over ARexx, except I'm not going to try to convince C-A to drop ARexx > and pick up Tcl. :) I agree. And it's interesting that John Ousterhout is trying to do under Un*x the sort of thing that the Amiga is much more at home doing. However-- as I said -- it's not quite the hyperfunctionality we're after. Being still strictly a text-string-interpreter, just like ARexx, it isn't really dynamic enough at run-time to do the sort of things I believe Dave is thinking of. Like ARexx, it's easy to pass text commands around; hard to pass anything else (like data buffers). The only kind of run-time binding you can really do is to supply new text for responding to a certain event: OK for some applications -- not for all. (Often too slow, for one thing.) On the other hand, its embeddability and extensibility makes it rather atttractive as a possible component of a Hyperfunctional system. It's well worth keeping in mind. -- Pete --