From: greeny@top.cis.syr.edu (J. S. Greenfield)
Subject: Re: MacOberon
Organization: Syracuse University, CIS Dept.
Date: Thu, 30 Jul 92 02:06:12 EDT

In article <1992Jul29.154809.16204@gvl.unisys.com> dave@prc.unisys.com (David Lee Matuszek) writes:
>
>MacOberon "works" on my Mac (13" monitor).  However, the interface is
>a real show stopper.  Even if you assume the author had no particular
>reason to follow Apple's interface guidelines, it's still a disaster.
>For example, the "scroll bars" work by holding down some modifier key
>while you click with the mouse to move the selected line to the top of
>the window--but this leaves you with NO WAY to scroll backwards!
>Although MacOberon seems to have quite a bit of documentation, you are
>on your own when it comes to figuring out what to read first.

Actually, I found the interface to be a bit awkward, but there a few
reasons for this--

1) The package is designed for a three-button mouse.  Since the Mac standard
is a single-button mouse, they use modifier keys to simulate the two other
mouse keys.  (And the documentation does specify how to program the buttons
on a three button mouse in order to make it a "standard" Oberon three-button
mouse--basically, you just define two of the buttons to act like modifier
keys.)  BTW, you can scroll backwards, but only all the way back to the
top of a document.  I suspect that this is an indication that Oberon
documents are typically short.

2) Oberon is designed to be portable.  As such it should have as standard
an interface as possible, regardless of which machine it is running on.
Since the MacOS routines are not available on all of the other machines, you
shouldn't expect that the system will be based around a mac interface.

3) I seriously doubt that Wirth's interest was to spend time and energy
developing a beautiful and full blown interface.  Rather, I'm sure he
decided to develop a basic interface, and devote most of the effort toward
the real meat of whatever Oberon is...


Also, though the documentation may not be award-winning, the system does
tell you which file should open to get various information.

The biggest problem I had was figuring out why I was getting blown out of
the water every time I booted MacOberon.  It turns out that it is incompatible
with AutoDoubler...


>I downloaded MacOberon because I wanted to find out something about
>the Oberon language, but decided I didn't want to know badly enough to
>hassle with the brain-dead interface.  (My interest was only casual;
>someone with more motivation could probably succeed.)
>
>I don't know if the interface is incidental or integral to Oberon.  If
>incidental, then, as you say, you can't fault somebody for making a
>free port, and maybe somebody will someday do a better job.  But it
>looked as if the interface was part of the Oberon design, and in that
>case you have to wonder if the rest of the language is done as badly
>and with as little regard to state-of-the-art techniques.

Well, I'd say it's integral in the sense that it is undoubtedly *standardized*
for all Oberon implementations.  But it is probably incidental int he sense
that the fundamental ideas of Oberon are not dependent on how the windows
scroll...

As I mentioned above, you really can't fault someone who creates a language
(which I can only imagine is intended first and foremost as a research tool
for new language/OS concepts) and decides that they are not going to
spend their life developing a master interface.

Would you rather be the person who created Pascal, or, say, one of the many
people who developed THINK Pascal?

(And that's not to put down TP which I think is a great package.  It's just
to point out that you wouldn't expect Wirth to create Pascal *and* spend
his time developing a great (on the whole) interface like TP.  First things
first.)


>Comments are welcome.  I'd be especially interested in hearing whether
>anyone thinks Oberon itself is neat enough to be worth the trouble of
>learning the interface.

For myself, I don't know.  I had been under the impression that Oberon
was intended to support distributed processes, but it didn't look that way
to me when I check out MacOberon.  Then again, I didn't spend much time
with it, since having to shut off AD is a real pain...


-- 
J. S. Greenfield                                         greeny@top.cis.syr.edu
(I like to put 'greeny' here, 
but my d*mn system wants a 
*real* name!)                        "What's the difference between an orange?"