NeWS


NeWS
HyperTIES browser and Emacs authoring tool with pie menus on the NeWS window system.

NeWS (for Network extensible Window System) was a windowing system developed by Sun Microsystems in the mid 1980s.[1] Originally known as "SunDew",[2] its primary authors were James Gosling and David S. H. Rosenthal. The NeWS interpreter was based on PostScript (as was the later Display PostScript, 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.

Contents

Description

NeWS started by implementing a PostScript interpreter that runs 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, based on viewports known as canvases, and a synchronous event distribution system, supporting events, interests, threads and monitors.

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. The input handling system was designed to provide strong event synchronization guarantees that were not possible with asynchronous protocols like X. [1]

To support user interface widgets, NeWS expanded the original PostScript stack-based language into a complete object oriented (OO) programming style with inheritance. 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.

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 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, which results in a delay in responding.

The NeWS Toolkit Applications

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.

Licensing

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

  • SGI used a version of it named 4Sight to replace their proprietary MEX windowing system.
  • Grasshopper Group created a Macintosh port called MacNeWS
  • Architech Corporation ported NeWS to OS/2[3]

Applications

The OPEN LOOK version of the FrameMaker desktop publishing program, developed by Frame Technology Corp. with funding mainly from Sun Microsystems 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.[4] Don Hopkins developed a NeWS version of SimCity that was built with HyperLook.

Competition with X Window System

The first versions of NeWS emulated the X10 protocol by translating the calls into NeWS PostScript. Speed problems plus the existence of programs that relied on the exact pixel results of X10 calls, and the obsolescence of X10, forced Sun to release an X11/NeWS hybrid called Xnews which ran an X11 server in parallel with the PostScript interpreter. This seriously degraded the NeWS interpreter performance and was not considered a very good X11 server either. Sun also implemented the OPEN LOOK user interface specification in several toolkits: The NeWS Toolkit (TNT) was an OPEN LOOK toolkit written in PostScript that ran in the NeWS server. OLIT was built on the same Xt (X Intrinsics) base as Motif, and XView used the same APIs as Sun's earlier SunView window system.

After it was clear that OPEN LOOK had lost out to Motif in popularity, and after Adobe acquired FrameMaker, Sun stopped supporting NeWS, and products on NeWS simply vanished. Most Unix workstations (including Sun's own) now run the X Window System.

Reasons for failure of NeWS

In many ways NeWS had an excellent design for thin-networked clients

  • moving much of the processing to the display
  • allowing clients to reduce network traffic by defining new operators
  • separating graphical user interface semantics from client program semantics.
  • the 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.

NeWS was architecturally similar to what is now called AJAX, except that NeWS:

  • used PostScript code instead of JavaScript for programming.
  • used PostScript graphics instead of DHTML/CSS for rendering.
  • used PostScript data instead of XML/JSON for data representation.

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. Any commercial code shipped using the NeWS libraries required licensing fees to be paid to Sun, Adobe Systems, and Xerox PARC.
  • 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. Making matters worse, the variety of widget sets offered by Sun was confusing to developers.
  • PostScript is an atypical 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
  • Adobe refused to port their popular PhotoShop and Illustrator graphics editing applications to SunOS or Solaris until Sun moved from NeWS to Display PostScript.

It is interesting to contrast NeWS with Display PostScript (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 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.

References

External links


Wikimedia Foundation. 2010.

Synonyms:

Look at other dictionaries:

  • news — W1S1 [nju:z US nu:z] n [U] [Date: 1400 1500; Origin: new] 1.) information about something that has happened recently ▪ I m not sure how he s going to react to the news. ▪ The good news is that tomorrow will be fine and sunny. ▪ You seem upset not …   Dictionary of contemporary English

  • news — [ nuz ] noun uncount *** 1. ) information about something that has happened recently: I m afraid I ve got some bad news. I wrote to John telling him all the latest news. news for: Good news for home owners! news of/about: Friends expressed shock… …   Usage of the words and phrases in modern English

  • NeWS — NeWS, für Network/extensible Window System stehend, ist eine auf PostScript aufbauende Programmiersprache und ein analog zu X11 vernetzbares Fenstersystem zur Darstellung von grafischen Benutzeroberflächen. NeWS begann als Forschungsprojekt im… …   Deutsch Wikipedia

  • NEWS — Pays d’origine  Japon Genre musical JPop Années d activité Depuis 2003 Labels …   Wikipédia en Français

  • NewS — Pays d’origine Japon Genre(s) JPop Années actives 2003 ... Label(s) Johnny Associates Site Web ... Membres K …   Wikipédia en Français

  • News on Q — Pinakamakabuluhang oras ng balitaan sa primetime (Most Meaningful Time of News in Primetime) Format News Created by GMA Network, Inc …   Wikipedia

  • News to Go — Format Newscast Live action Citizen Journalism Created by GMA Network Developed by GMA News and Public Affairs Presented by Kara David Howie Severino …   Wikipedia

  • NEWS — Жанр J pop Годы 2003 настоящее время Страна …   Википедия

  • News at 6:30 — 六點半新聞報道 Genre News, Weather, Sport Created by TVB News …   Wikipedia

  • News 24 — may refer to: News 24 (Albania), a 24 hour news television channel in Albania News24, a South Africa based news website Rai News 24, a 24 hour news television channel in Italy BBC News 24, now known as BBC News, a UK 24 hour news television… …   Wikipedia

  • NEWS — Datos generales Nacimiento 2003 Origen Tokio,   …   Wikipedia Español


We are using cookies for the best presentation of our site. Continuing to use this site, you agree with this.