All Topics  
NeWS

 

   Email Print
   Bookmark   Link






 

NeWS



 
 
NeWS (for Network extensible Window System) was a windowing system
Windowing system

A windowing system is a component of a graphical user interface , and more specifically of a desktop environment, which supports the implementation of window managers, and provides basic support for graphics hardware, pointing devices such as mice, and keyboards....
 developed by Sun Microsystems
Sun Microsystems

Sun Microsystems, Inc. is a multinational corporation vendor of computers, computer components, computer software, and information technology services, founded on February 24, 1982....
 in the mid 1980s. Originally known as "SunDew", its primary authors were James Gosling
James Gosling

James A. Gosling, Order of Canada, Doctor of Philosophy is a famous software developer, best known as the father of the Java ....
 and David S. H. Rosenthal
David S. H. Rosenthal

Dr. David S. H. Rosenthal is a computer scientist and chief scientist for the LOCKSS project. He is known for his early work in developing the X Window System, including the ICCCM....
. The NeWS interpreter
Interpreter (computing)

In computer science, an interpreter normally means a computer program that execution , i.e. performs, instructions written in a programming language....
 was based on PostScript
PostScript

PostScript is a dynamically typed concatenative programming language programming language created by John Warnock and Charles Geschke in 1982. PostScript is best known for its use as a page description language in the electronic and desktop publishing areas....
 (as was the later Display PostScript
Display PostScript

Display PostScript is an on-screen display system. As the name implies, DPS uses the PostScript imaging model and language to generate on-screen graphics....
, although the two projects were otherwise unrelated) extending it to allow interaction and multiple "contexts" to support windows. Like PostScript, NeWS could be used as a complete programming language, but unlike PostScript, NeWS could be used to make complete interactive programs with mouse support and a GUI
Gui

Gui or guee is a generic term to refer to grillinged dishes in Korean cuisine. These most commonly have meat or fish as their primary ingredient, but may in some cases also comprise grilled vegetables or other vegetarian ingredients....
.

Description
NeWS started by modifying the PostScript interpreter to run in a cooperative multitasking fashion, since, unlike PostScript in a printer, NeWS would be displaying a number of PostScript programs at the same time on one screen.






Discussion
Ask a question about 'NeWS'
Start a new discussion about 'NeWS'
Answer questions from other users
Full Discussion Forum



Encyclopedia


NeWS (for Network extensible Window System) was a windowing system
Windowing system

A windowing system is a component of a graphical user interface , and more specifically of a desktop environment, which supports the implementation of window managers, and provides basic support for graphics hardware, pointing devices such as mice, and keyboards....
 developed by Sun Microsystems
Sun Microsystems

Sun Microsystems, Inc. is a multinational corporation vendor of computers, computer components, computer software, and information technology services, founded on February 24, 1982....
 in the mid 1980s. Originally known as "SunDew", its primary authors were James Gosling
James Gosling

James A. Gosling, Order of Canada, Doctor of Philosophy is a famous software developer, best known as the father of the Java ....
 and David S. H. Rosenthal
David S. H. Rosenthal

Dr. David S. H. Rosenthal is a computer scientist and chief scientist for the LOCKSS project. He is known for his early work in developing the X Window System, including the ICCCM....
. The NeWS interpreter
Interpreter (computing)

In computer science, an interpreter normally means a computer program that execution , i.e. performs, instructions written in a programming language....
 was based on PostScript
PostScript

PostScript is a dynamically typed concatenative programming language programming language created by John Warnock and Charles Geschke in 1982. PostScript is best known for its use as a page description language in the electronic and desktop publishing areas....
 (as was the later Display PostScript
Display PostScript

Display PostScript is an on-screen display system. As the name implies, DPS uses the PostScript imaging model and language to generate on-screen graphics....
, although the two projects were otherwise unrelated) extending it to allow interaction and multiple "contexts" to support windows. Like PostScript, NeWS could be used as a complete programming language, but unlike PostScript, NeWS could be used to make complete interactive programs with mouse support and a GUI
Gui

Gui or guee is a generic term to refer to grillinged dishes in Korean cuisine. These most commonly have meat or fish as their primary ingredient, but may in some cases also comprise grilled vegetables or other vegetarian ingredients....
.

Description


NeWS started by modifying the PostScript interpreter to run in a cooperative multitasking fashion, since, unlike PostScript in a printer, NeWS would be displaying a number of PostScript programs at the same time on one screen. It also added a complete view hierarchy system, based on viewports known as canvases. Like the view system in most GUIs, NeWS included the concept of a tree of embedded views along which events were passed. For instance, a mouse click would generate an event that would be passed to the object directly under the mouse pointer, say a button. If this object did not respond to the event, the object "under" the button would then receive the message, and so on. NeWS included a complete model for these events, including timers and other automatic events, input queues for devices such as mice and keyboards, and other functionality required for full interaction.

To support event-based programming, NeWS expanded the original PostScript stack-based language into a complete object oriented (OO) programming style with inheritance
Inheritance (computer science)

In object-oriented programming, inheritance is a way to form new class es using classes that have already been defined. The inheritance concept was invented in 1967 for Simula....
. This eliminated the need for an external OO language to build a complete application.

Since all of these additions were implemented as extensions to PostScript, it was possible to write simple PostScript code that would result in a running, onscreen, interactive program. Two popular demonstration programs were an onscreen clock, which required about two pages of code, and a program which drew a pair of eyes that followed the cursor as it moved around the screen. The eyeball program was shown at SIGGRAPH in 1988, and was the inspiration for the later well-known X application xeyes
Xeyes

xeyes is a graphical computer program showing two googly eyes which follow the cursor movements on the screen as if they were watching it....
.

NeWS included several libraries of user interface elements (widgets), themselves written in NeWS. These widgets ran all of their behaviour in the NeWS interpreter, and only required communications to an outside program (or more NeWS code) when the widget demanded it. For example, a toggle button's display routine can query the button's state (pressed or not) and change its display accordingly. The button's PostScript code can also react to mouse clicks by changing its state from "pressed" to "not pressed" and vice versa. All this can happen in the windowing server without interaction with the client program, and only when the mouse is released on the button will an event be sent off for handling.

This was more sophisticated than the X Window System
X Window System

The X Window System is a computing software system and network protocol that provides a graphical user interface for networked computers. It implements the X Window System protocols and architecture and provides windowing system on raster graphics Visual display units and manages Keyboard and pointing device control functions....
 server model, which can only report "mouse was pushed down here", "mouse is now here", "mouse was released here" events to a client, which then has to figure out if the event is in the button, switch the state, and finally instruct the server to display the new state. If client and server are not on the same machine, these interactions must travel over the network, slowing the feedback loop down unnecessarily.

The best example of such a library is TNT (The NeWS Toolkit) which was released by Sun in 1989. Sun also shipped a smaller toolkit intended for example purposes and making small programs.

Although adoption was never widespread, several companies licensed NeWS and adapted it for various uses. SGI
Silicon Graphics

Silicon Graphics, Inc. is a company manufacturer high-performance computing solutions, including computer hardware and computer software. SGI was founded by James H....
 used a version of it named 4Sight
4Sight

4Sight was the default window manager for Silicon Graphics' UNIX variant IRIX from version 3.0 to 3.3.3L. 4Sight ran under a hybrid window system known as xSGINeWS : a combination of MIT's X11 and Sun Microsystems' NeWS....
 to replace their proprietary IRIS GL
IRIS GL

IRIS GL was a proprietary graphics application programming interface created by Silicon Graphics for producing 2D and 3D computer graphics on their IRIX-based IRIS graphical workstations....
 windowing system. The OPEN LOOK
OPEN LOOK

OPEN LOOK is a graphical user interface specification for UNIX computer workstations. It was originally defined in the late 1980s by Sun Microsystems and AT&T....
 version of the FrameMaker
FrameMaker

Adobe FrameMaker is a desktop publishing and word processing application that is popular for large documents. It is produced by Adobe Systems. Although FrameMaker has evolved slowly in recent years, it maintains a strong following among professional technical writers....
 desktop publishing program, developed by Frame Technology Corp. with funding mainly from Sun Microsystems
Sun Microsystems

Sun Microsystems, Inc. is a multinational corporation vendor of computers, computer components, computer software, and information technology services, founded on February 24, 1982....
 and NSA, was one of the few commercial products that ran on NeWS. HyperLook, developed by Arthur van Hoff, was an interactive application design system.

The freely-available X11 was already quite popular, so the first versions of NeWS emulated X11 by translating the calls into NeWS PostScript. Speed problems plus the existence of programs that relied on the exact pixel results of X11 calls forced Sun to release an X11/NeWS hybrid called Xnews which ran an X server in parallel with the interpreter. This seriously degraded the NeWS interpreter performance and was not considered a very good X server either. Sun also implemented the OPEN LOOK look and feel for X programs in two toolkits: OLIT
OLIT

OLIT is a widget toolkit from Sun Microsystems introduced in 1988, providing an OPEN LOOK user interface for X Window System applications. It provides an Xt application programming interface for the C , providing an easy way for those familiar with Xt programming to implement the OPEN LOOK look and feel....
 was built on the same Xt
XT

XT may refer to:* Air Exel, IATA code* Canon Digital Rebel XT, a digital single-lens reflex camera* Subaru XT, a sports car* In sport, XT can mean extra time...
 (X Intrinsics) base as Motif
Motif (widget toolkit)

In computing, Motif refers to both a graphical user interface specification and the widget toolkit for building applications that follow that specification under the X Window System on Unix and other POSIX-compliant systems....
, and XView
XView

XView is a widget toolkit from Sun Microsystems introduced in 1988. It provides an OPEN LOOK user interface for X Window System applications, with an object-oriented application programming interface for the C ....
 used the same APIs as Sun's earlier SunView
SunView

SunView was a windowing system from Sun Microsystems developed in the early 1980s. It was included as part of SunOS, Sun's UNIX implementation; unlike later UNIX windowing systems, much of it was implemented in the system kernel ....
 window system.

After it was clear that OPEN LOOK had lost out to Motif in popularity, and after Adobe
Adobe Systems

Adobe Systems Incorporated is an United States computer Computer software company headquartered in San Jose, California, USA. The company has historically focused upon the creation of multimedia and creativity software products, with a more-recent foray into rich Internet application software development....
 acquired FrameMaker, products on NeWS simply vanished. Most Unix
Unix

Unix is a computer operating system originally developed in 1969 by a group of American Telephone & Telegraph employees at Bell Labs, including Ken Thompson , Dennis Ritchie, Douglas McIlroy, and Joe Ossanna....
 workstations (including Sun's own) now run the X Window System.

Why did NeWS fail?


In many ways NeWS had an excellent design for thin-networked clients, by moving much of the processing to the display and separating graphical user interface semantics from client program semantics. NeWS also offered a PostScript drawing model, which is far easier to use and more powerful than other graphical APIs, even compared to ones being used 20 years later. Many expected it to be a huge success.

Possible reasons for its failure in the market include:
  • NeWS needed to be licensed from Sun, while the source code for the X Window System was freely distributed under the MIT License
    MIT License

    The MIT License is a free software license originating at the Massachusetts Institute of Technology , used by the MIT X Consortium.It is a Permissive_free_software_licence license, meaning that it permits reuse within proprietary software on the condition that the license is distributed with that software....
    . Any commercial code shipped using the NeWS libraries required licensing fees to be paid to Sun, Adobe Systems
    Adobe Systems

    Adobe Systems Incorporated is an United States computer Computer software company headquartered in San Jose, California, USA. The company has historically focused upon the creation of multimedia and creativity software products, with a more-recent foray into rich Internet application software development....
    , and Xerox PARC
    Xerox PARC

    PARC , formerly Xerox PARC, is a research and development company in Palo Alto, California with a distinguished reputation for its contributions to information technology....
    .
  • NeWS lacked a robust library of reusable code until well after the X Window System had become the dominant paradigm. This mistake was obviously not repeated in Java
    Java (programming language)

    Java is a programming language originally developed by James Gosling at Sun Microsystems and released in 1995 as a core component of Sun Microsystems' Java ....
    . Making matters worse, the variety of widget sets offered by Sun was confusing to developers.
  • PostScript is a poor language to write math expressions in, due to its postfix and stack nature. That was not a detriment to printing, but math is needed extensively for user interface routines such as the calculation of how far down a slider a mouse was clicked. Several compilers from C-like syntax were available, such as pdb (PostScript Done Better) and c2ps, but were cumbersome to use and not supported by Sun.
  • Writing NeWS applications required coding the client- and server-side parts of the application in two very different programming languages and communicated asynchronously. Coordinating the communication between the two sides was difficult and Sun provided little support for it.
  • The implementation of the NeWS window server never achieved the level of robustness of competing window systems. The situation was made worse with the NeWS/X11 merge, and was compounded by the timing of its release as part of the first Solaris 2 release, which itself had performance issues.
  • Management was confused as to what market NeWS applied to and how to best leverage its strengths when comparing to X11


It is interesting to contrast NeWS with Display PostScript
Display PostScript

Display PostScript is an on-screen display system. As the name implies, DPS uses the PostScript imaging model and language to generate on-screen graphics....
 (DPS), which used the same underlying imaging model and language, but did so in a very different way. In DPS the PostScript commands were limited to what was needed to draw things; all other operations (such as creating a window to draw into) had to be implemented using other system interfaces. In comparison with NeWS, DPS lacked interesting features such as the ability to use a PostScript path to describe the shape of a window, which also meant DPS required use of the low-level Xlib
Xlib

Xlib is an X Window System protocol client library in the C . It contains subroutines for interacting with an X Server . These functions allow programmers to write programs without knowing the details of the protocol ....
 library and very unwieldy glue code to make sure both DPS and X were agreeing about what to do. However, it also meant that the majority of the system and application code was compiled rather than interpreted, making it many times faster and considerably easier to write and debug. The result was a much smaller engine that like NeWS offered a PostScript-based display, but had higher performance and a somewhat more "natural" programming environment.

External links