[comp.windows.misc] NeWS artistry

spage@cup.portal.com (S spage Page) (02/14/90)

Ken Lee, in an otherwise reasonable article, says
>>  ...  Also there is little
>>  technical difference between X and NeWS, except for very small machines
>>  (where X probably wins because of its less complex server) and very
>>  unusual machines (where NeWS probably wins because of its
>>  high-level-only graphics model).


NeWS is extrordinarily different from X11.  Its imaging model is to X11
as PostScript is to earlier printer control languages.

But disregard the PostScript imaging model, anyone can implement that.
There's more:

In NeWS, you program the server on the fly to do what you want by
sending it PostScript programs across the network.  It's like no other
window system, nor any other client-server model, ever conceived by man.

But you could argue that the same extension capability is there in any
bidirectional connection to a PostScript interpreter -- you can download
the NeWS class manager into any PostScript printer.  There's more:

The way the fundamentals of a window system (windows, input, damage)
plus extensions (lightweight processes, interprocess communication, and
message sending) are integrated into the PostScript language and
graphics model is so damn beautiful that once you touch the soul of
NeWS, programming another window system is like awakening from a dream.
It's that integration which Display PostScript lacks.  In any PostScript 
you can download a prolog which defines `drawGridLines'.  Only in NeWS 
can you hand the server the smarts to create windows, create user 
interface gadgets, fork input handlers, handle events, redefine the byte 
stream back from the server, and almost everything else needed for a
windowing application or toolkit.

You could argue that using PostScript as the extension language is a
dubious choice.  But having made that choice, the way in which James
Gosling and his associates created a network/extensible window system is
pure magic.

Software elegance and flat-out knock-em-dead technical wizardry never
won the "war", and I entirely concur that "The real reason for choosing,
in most sites, will be applications."  However, just because a server
running NeWS looks like an X11 server, don't denigrate it.  I sincerely
consider it an honor to have been involved, in however small a way, with
such a gem of software design.  You owe it to yourselves to cut through
the hype on both sides and appreciate how NeWS works.

Disclaimer: I worked at Sun and wrote the NeWS 1.0 manual.

=S Page
 

mccoy@pixar.UUCP (Daniel McCoy) (02/16/90)

In article <26919@cup.portal.com> spage@cup.portal.com (S spage Page) writes:
>You could argue that using PostScript as the extension language is a
>dubious choice.  

Indeed I would.  
Postscript is great inside printers.
Just like Forth is great inside diagnostic ROM's.
As a programming language for the high level functionality of windows,
I remain unconvinced.
In my experience, NeWS servers have tended to crash and hang a lot when 
presented with something unfamiliar.   And that's not writing postscript 
code, but using utilities provided by the likes of Sun and SGI.

I personally don't like the idea of loading alien code that's as low
level as postscript into my window server.  The scheme just doesn't 
seem robust enough.  X has a lot of warts, but it at least seems like 
an X server can be written to protect itself from flakey applications.

>Software elegance and flat-out knock-em-dead technical wizardry never
>won the "war", 

I haven't looked for a while, but I remember the xnews server being
one of the most bloated pieces of software I have ever seen.
Elegance, in my experience, usually ends up compact.

If NeWS is so elegant, then how come it isn't the "default" window system
offered by Sun yet?

SGI uses it, but doesn't everybody do their SGI graphics programs 
with gl?  I know I do.  And I've hung the SGI NeWS server by hitting
control-C at the wrong time.
I'm writing this on a DecStation that has a pretty solid window system 
product based on X. I have never hung or crashed the server, and I've
been writing an X application.  (Granted, I've hung X servers on other 
platforms, but those also tended to have brain-dead versions of Unix.)

My main complaint about X is that it is too loosely coupled to toolkits.
As an application programmer, I don't want to have to decide between
Motif/XView/Athena-Widgets/whatever.  
I just want a robust server and a good toolkit.
Sun may win the window wars yet, but if they do methinks it will be because 
of the XView toolkit, not NeWS.

>Disclaimer: I worked at Sun and wrote the NeWS 1.0 manual.

Disclaimer: I worked at Sun when the graphics group had to make patches 
to SunView because the windows group was too swamped with bugs in their 
unreleasable versions of NeWs that they refused to do maintainance 
on the released software.  

Dan McCoy     ...!ucbvax!pixar!mccoy

barnett@crdgw1.crd.ge.com (Bruce Barnett) (02/19/90)

In article <9202@pixar.UUCP>, mccoy@pixar (Daniel McCoy) writes:
>If NeWS is so elegant, then how come it isn't the "default" window system
>offered by Sun yet?

Priorities. OpenLook and X are more important that NeWS right now.
Also - X keeps changing. (and getting faster).

And when Sun does come out with a "default" window system, it will be
OpenLook. Since they have two X/OpenLook window managers, (olwm - X
based, and pswm - NeWS based), they might default to the fastest
window manager, instead of the more flexible one.

--
Bruce G. Barnett	<barnett@crd.ge.com>   uunet!crdgw1!barnett