[comp.ai] Explorer

mikeb@wdl1.UUCP (Michael H. Bender) (04/13/88)

PLEASE - if you have any experience with the TI Explorer environment,
or have made any comparisons between it and the SUN environment,
please help us by lettin us know ....

An associate of mine is debating between the purchase of a Mac-II with
the TI Explorer board, or a Sun workstation.  Currently, he has a Sun,
and he wants to buy 2 Mac's and link them togehter (NFS? IP/TCP?).  He
will be running Knowledge Craft Primarily.

QUESTION 1)
How hard is it to learn to use the Lisp environment on the Explorer?
Is it as difficult as the Symbolics used to be?   

In the past - people have told me that it takes close to a year to
become expert on the Symbolics (much less on the Sun) ... is this true
for the Explorer also?

QUESTION 2)
How hard is it to maintain the software and environment?  He is afraid
that if he gets a Sun he will need to hire a Unix guru.... Will he
have to hire an Explorer/Zeta-Lisp expert if he gets a MacII with the
TI board?

QUESTION 3)
Does the TI environment (which I assume will completely run on the
Mac-II) provide a large number of libraries that would otherwise have
to be developed on the SUN workstations?


Please share your experiences with us...



Mike Bender  mhb@ford-wdl1

nau@frabjous (Dana Nau) (04/15/88)

In article <3470003@wdl1.UUCP> mikeb@wdl1.UUCP (Michael H. Bender) writes:
>PLEASE - if you have any experience with the TI Explorer environment,
>or have made any comparisons between it and the SUN environment,
>please help us by lettin us know ....

I've had extensive experience with Suns, Symbolics machines, and Explorers.
Currently, my research group has two Explorers and three Suns.  We use the
Explorers for Lisp programming, and the Suns for other stuff.  I haven't had
any experience with a Mac-II, so I can't comment on that.

>An associate of mine is debating between the purchase of a Mac-II with
>the TI Explorer board, or a Sun workstation.  Currently, he has a Sun,
>and he wants to buy 2 Mac's and link them togehter (NFS? IP/TCP?).  He
>will be running Knowledge Craft Primarily.
>
>QUESTION 1)
>How hard is it to learn to use the Lisp environment on the Explorer?
>Is it as difficult as the Symbolics used to be?   
>
>In the past - people have told me that it takes close to a year to
>become expert on the Symbolics (much less on the Sun) ... is this true
>for the Explorer also?

The operating systems for both the Explorer and the Symbolics are based on
some code which was originally developed at MIT.  Thus, at one time, the
operating systems for the Explorer and Symbolics were nearly the same.
Lately, TI and Symbolics have diverged a bit in the enhancements and
modifications they've made to the operating systems, but there are still a
lot of similarities.

The operating system is complex, and when I was first trying to learn it, I
got pretty frustrated.  However, it certainly didn't take me as long as you
indicate above; I was pretty proficient after using the machines for only a
few months.  Furthermore, it was well worth the effort, because once I
became proficient, I found Lisp programming on the Lisp machine to be much
easier than it had ever been on a Sun.

>QUESTION 2)
>How hard is it to maintain the software and environment?  He is afraid
>that if he gets a Sun he will need to hire a Unix guru.... Will he
>have to hire an Explorer/Zeta-Lisp expert if he gets a MacII with the
>TI board?

I don't know anything about the Mac, but we're doing pretty well with the
Explorers on our own.

We do have a maintenance staff for the Suns, but that's because my
department has several dozen Suns and has made a commitment to maintaining
them for everyone in the department.  Our staff has made a lot of
modifications and enhancements to the Sun operating system--and what it
would be to use a Sun without our maintenance staff, I don't know.

>QUESTION 3)
>Does the TI environment (which I assume will completely run on the
>Mac-II) provide a large number of libraries that would otherwise have
>to be developed on the SUN workstations?

For Lisp programming, I much prefer an Explorer or Symbolics rather than a
Sun; for text processing and such, I use the Sun.  On the Lisp machines,
Lisp is thoroughly integrated with the operating system, and as a result,
you can quite easily do things with windows, menus, editing, debugging,
etc., that would be pretty painful to do in Lisp on the Sun.  For example,
if I want a pop-up a menu on the explorer, I simply call a built-in Lisp
function, giving it the menu title and menu entries, and telling what should
be done for each menu entry.  That kind of thing is substantially more
difficult on the Sun.

If the Mac II has the same kind of Lisp/Operating System integration that
the Explorer has, then there might be some advantages to it since it can do
other general-purpose programming too.  However, I'd want to check it out
carefully first.  The Mac operating system and window environment are
substantially different from those on the Explorer and Symbolics, and I have
no idea how they've integrated Lisp with all this.

Dana S. Nau				ARPA & CSNet:  nau@mimsy.umd.edu
Computer Sci. Dept., U. of Maryland	UUCP:  ...!{allegra,uunet}!mimsy!nau
College Park, MD 20742			Telephone:  (301) 454-7932

jeff@aiva.ed.ac.uk (Jeff Dalton) (05/06/88)

In article <11061@mimsy.UUCP> nau@frabjous.UUCP (Dana Nau) writes:
>On the Lisp machines, Lisp is thoroughly integrated with the operating
>system, and as a result, you can quite easily do things with windows,
>menus, editing, debugging, etc., that would be pretty painful to do in
>Lisp on the Sun.  For example, if I want a pop-up a menu on the explorer,
>I simply call a built-in Lisp function, giving it the menu title and menu
>entries, and telling what should be done for each menu entry.  That kind
>of thing is substantially more difficult on the Sun.

I would think you could just call a built-in function, etc.  This seems
more a question of what libraries are available than an inherent advantage
of Lisp machines.

Nonetheless, it is true that such things are easier at present on Lisp
machines.

Jeff Dalton,                      JANET: J.Dalton@uk.ac.ed             
AI Applications Institute,        ARPA:  J.Dalton%uk.ac.ed@nss.cs.ucl.ac.uk
Edinburgh University.             UUCP:  ...!ukc!ed.ac.uk!J.Dalton

miller@ACORN.CS.ROCHESTER.EDU (Brad Miller) (05/07/88)

    Date: 5 May 88 19:13:15 GMT
    From: jeff@aiva.ed.ac.uk (Jeff Dalton)

	[...]
	
    I would think you could just call a built-in function, etc.  This seems
    more a question of what libraries are available than an inherent advantage
    of Lisp machines.

I think the more telling difference is your ability to change under a lispm
environment what is taken as immutable under UNIX. For example, if I want to
modify the scheduler slightly, I can do that *at runtime*, I don't have to
compile a whole new system to run. If I want to change a definition being
used in another process, again, I can change it *at runtime*. Thus, I can
write new modes for my editor, and test them out in the same session, not
reload and relink a new version of the editor and then test *that* out.

In general, one is provided with the source to the entire system, and any
function may be changed or advised (advice is giving a piece of code to be
run before, after, or around some definition. Thus if I don't want to
actually change some part of the compiler because it will change between
releases, but the interface will remain constant, I can advise it instead.
Since advice can be compiled, there is really no performance penalty to
doing this, it is a function of working on an object-oriented system.

Most importantly, a lispm does not distinguish between the 'user' and the
'kernel'. Everyone is one big happy address space. This has the advantage of
allowing you to reuse software as you see fit, not as some UNIX designer has
decreed your interface must be to the kernel. You are free to call directly
or modify any functions that would normally be inside of the kernel, e.g.
the scheduler example I brought up. Why write your own scheduler to run as a
single UNIX process when you can just modify your system's scheduler to
suit?

There are many other advantages to the lispm environment, but I'm just
attempting to address this issue of libraries. Several papers have been
published on the lispm programming environment(s), the more current of which
I'm sure e.g. Symbolics will be happy to provide you with. As a quick
starter, look at _Interactive Programming Environments_ by Barstow, Shrobe,
and Sandewall, but realize that the book was published 4 years ago, and all
of Xerox, TI and Symbolics have done much to advance the state of the art
since then.

----
Brad Miller		U. Rochester Comp Sci Dept.
miller@cs.rochester.edu {...allegra!rochester!miller}

aboulang@bbn.com (Albert Boulanger) (05/07/88)

  There are many other advantages to the lispm environment, but I'm just
  attempting to address this issue of libraries. Several papers have been
  published on the lispm programming environment(s), the more current of which
  I'm sure e.g. Symbolics will be happy to provide you with. As a quick
  starter, look at _Interactive Programming Environments_ by Barstow, Shrobe,
  and Sandewall, but realize that the book was published 4 years ago, and all
  of Xerox, TI and Symbolics have done much to advance the state of the art
  since then.


Also, for a non-lispm oriented discussion of the advantages of single
address environments, see the article:

"Towards Monolingual Programming Environments" Jay Heering & Paul Klint
ACM Trans. on Prog. Lang. & Systems Vol7 No. 2 April 1985. 183-213.

Personally, I feel the house of cards that multiple address
programming environments collapse when it comes to error handling.
While it is possible to fix this, it is VERY VERY hard. Question: What
do you do when you get an error in somebody elses foreign-language
(non lisp) window system that you are using within lisp on, say, a UNIX box?
Can you debug the code within a lisp stack trace? Can you build an
interface to mix the stack traces together?



Albert Boulanger
aboulanger@bbn.com
Albert Boulanger
BBN Labs Inc.
ABoulanger@bbn.com (arpa)
Phone: (617)873-3891

ok@quintus.UUCP (Richard A. O'Keefe) (05/09/88)

In article <9457@sol.ARPA>, miller@ACORN.CS.ROCHESTER.EDU (Brad Miller) writes:
> Most importantly, a lispm does not distinguish between the 'user' and the
> 'kernel'. Everyone is one big happy address space.

Which is to say:  one fall down, ALL fall down.
Don't lispm users ever make mistakes?

apl_aimh@jhunix.HCF.JHU.EDU (Marty Hall) (05/10/88)

In article <947@cresswell.quintus.UUCP> ok@quintus.UUCP (Richard A. O'Keefe) writes:
[ Re no distinction between user and kernel ]
>Which is to say:  one fall down, ALL fall down.
>Don't lispm users ever make mistakes?

Nah, we just call it a feature.  :-)
Seriously though, remember that lispm's are single user machines, so even if
you REALLY mess up and the system's debugging facilities can't save you (they
usually can - my Symbolics debugging aids are many times more powerful/helpful
than those on Lucid CL on my Sun) - even if you have to reboot, you don't kill
anyone else.
			- Marty Hall
-- 
ARPA (preferred) - hall@alpha.ece.jhu.edu [hopkins-eecs-alpha.arpa]
UUCP   - ..seismo!umcp-cs!jhunix!apl_aimh | Bitnet  - apl_aimh@jhunix.bitnet
Artificial Intelligence Laboratory, MS 100/601,  AAI Corp, PO Box 126,
Hunt Valley, MD  21030   (301) 683-6455