klee@decwrl.dec.com (Ken Lee) (10/26/89)
Here's the latest version of my bibliography of X stuff. As it's getting pretty long, I'm only including the most useful or popular items. If you know of any others, please let me know. Thanks. Ken ====================== cut here =========================== _X _T_E_C_H_N_I_C_A_L _B_I_B_L_I_O_G_R_A_P_H_Y compiled by Ken Lee send updates to klee@decwrl.dec.com Asente, Paul, "Simplicity and Productivity," _U_N_I_X _R_e_v_i_e_w, vol. 6, no. 9, pp. 57-63. A discussion on the classing mechanism in the X Toolkit. ASP, Inc., _X _M_a_n_u_a_l _S_e_t (_3 _v_o_l_u_m_e_s), ASP, Inc., 1989. A copy of the MIT X11R3 manual set. Volume 1 covers popular client programs. Volume 2 covers Xlib. Volume 3 covers Xt and the Athena widgets. An upcomming Volume 4 covers Motif. ASP, Inc., _X _R_e_f_e_r_e_n_c_e _S_e_t (_3 _v_o_l_u_m_e_s), ASP, Inc., 1989. A 3 volume set of quick reference guides covering Xlib, Xt, Athena widgets, and popular clients. Baldwin, Howard, "Why All The Shouting Over X Terminals?," _U_N_I_X _W_o_r_l_d, _N_e_t_w_o_r_k_i_n_g _S_u_p_p_l_e_m_e_n_t, pp. 75-81, 1989. A broad look at X terminals, with details on 6 vendor's products. Brunet, James, "Using PCs at X Servers," _U_N_I_X _W_o_r_l_d, _N_e_t_w_o_r_k_i_n_g _S_u_p_p_l_e_m_e_n_t, pp. 83-85, 1989. An introduction to X server software for IBM PCs. Brunet, James, "New Challenge To Character Terminals," _U_N_I_X _W_o_r_l_d, pp. 79-83, May, 1989. Another introduction to X ter- minals, including descriptions of 6. Cashin, Jerry, "Many Struggle to Set Laws of Windows Game," _S_o_f_t_w_a_r_e _M_a_g_a_z_i_n_e, vol. 9, no. 2, pp. 74-79, February, 1989. A description of the players in the window system standards war. Includes a photo of Bob Scheifler. Farrow, Rik, "Before their time?," _U_N_I_X _W_o_r_l_d, pp. 75-81, July, 1989. This article describes X terminals in general and compares two models. The comparison is, unfortunately, not especially meaningful. Gancarz, M., "UWM: A User Interface for X Windows," in _P_r_o_c_e_e_d_- _i_n_g_s _o_f _t_h_e _S_u_m_m_e_r, _1_9_8_6 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 429-440. Describes UWM, the first good window manager for X. Gettys, Jim, "Problems Implementing Window Systems in UNIX," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _W_i_n_t_e_r, _1_9_8_6 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 89- 97. Describes some of the early work on X. Gettys, Jim, "Flexibility Is Key To Meet Requirements For X Win- dow System Design," _C_o_m_p_u_t_e_r _T_e_c_h_n_o_l_o_g_y _R_e_v_i_e_w, pp. 87-89, Summer, 1988. A high level description of the X Window Sys- tem. - 2 - Hancock, Bill, "DECwindows: X'ing With A Vengeance," _D_E_C _P_r_o_f_e_s_- _s_i_o_n_a_l, vol. 8, no. 2, pp. 70-84, February, 1989. A description of DECwindows, DEC's product version of X. It includes the standard X libraries, plus a tuned X server, a high-level user interface description language, and several X applications. Hopgood, F. R. A., _M_e_t_h_o_d_o_l_o_g_y _o_f _W_i_n_d_o_w _M_a_n_a_g_e_m_e_n_t, Springer- Verlag, New York, 1986. ISBN 0-387-16116-3. The proceed- ings of the important 1985 Alvery Workshop on Window Manage- ment. Many of the big names apparently were here. It in- cludes interesting material on problems with UNIX window systems and proposed solutions. It also includes descrip- tions of early versions of current UNIX window systems, such as X and NeWS. Johnson, Eric and Kevin Reichard, _X _W_i_n_d_o_w _A_p_p_l_i_c_a_t_i_o_n_s _P_r_o_g_r_a_m_- _m_i_n_g, MIS: Press. ISBN 1-55828-016-2. A tutorial on Xlib programming. This book has lots and lots of examples, but coverage of complex subjects is thinner than Jones' book. Jones, Oliver, _I_n_t_r_o_d_u_c_t_i_o_n _t_o _t_h_e _X _W_i_n_d_o_w _S_y_s_t_e_m, Prentice- Hall, 1988. ISBN 0-13-499997-5. An excellent introduction to programming with Xlib. Written with the programmer in mind, this book includes many practical tips that are not written anywhere else. You'll still need the MIT Xlib manu- al, as this book does not try to be totally complete. High- ly recommended for beginning Xlib programmers. Lee, Ed, "Window of Opportunity," _U_N_I_X _R_e_v_i_e_w, vol. 6, no. 6, pp. 47-61. This article proposes a user interface reference model and shows how X attempts to meet it. In the process, it presents a good, broad overview of X, its advantages, and its shortcomings. Leffler, Samuel J., "A Window On The Future?," _U_N_I_X _R_e_v_i_e_w, vol. 6, no. 6, pp. 62-69. This article compares NeWS with other window systems, such as X, and concludes that, despite its problems, NeWS is the window system of the future. Lemke, David and David S. H. Rosenthal, "Visualizing X11 Clients," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _W_i_n_t_e_r, _1_9_8_9 _U_S_E_N_I_X _C_o_n_f_e_r_- _e_n_c_e, pp. 125-138. A detailed look at ``visuals'', the X object that abstracts the properties of popular display hardware. Proper consideration toward visuals is necessary for an X client to work with all hardware supported by X. Linton, Mark A., John M. Vlissides, and Paul R. Calder, "Compos- ing User Interfaces with InterViews," _I_E_E_E _C_o_m_p_u_t_e_r, vol. 22, no. 2, pp. 65-84, February, 1989. Describes the Inter- Views user interface toolkit, written in C++ and based on the X Window System. The source code for Interviews is in the ``contrib'' section of the X11 distribution. - 3 - Macklem, Rick, Jim Linders, and Hugh Smith, "G Shell Environ- ment," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _S_u_m_m_e_r, _1_9_8_8 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 15-22. Describes a graphical UNIX shell written as a X client. McCormack, Joel and Paul Asente, "Using the X Toolkit or How to Write a Widget," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _S_u_m_m_e_r, _1_9_8_8 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 1-13. An excellent tutorial on writing basic X Toolkit widgets. Potential widget writers (and maybe users, too) should probably start by reading this pa- per. Unfortunately, it's based on X11R2, so some of it is out of date. McCormack, Joel and Paul Asente, "An Overview of the X Toolkit," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _A_C_M _S_I_G_G_R_A_P_H _S_y_m_p_o_s_i_u_m _o_n _U_s_e_r _I_n_t_e_r_- _f_a_c_e _S_o_f_t_w_a_r_e, pp. 46-55, October, 1988. An architectural overview of the toolkit's goals, how it accomplished them, and possible future directions. McCormack, Joel, Paul Asente, and Ralph Swick, _X _T_o_o_l_k_i_t _I_n_t_r_i_n_- _s_i_c_s - _C _L_a_n_g_u_a_g_e _I_n_t_e_r_f_a_c_e, DEC Press, 1989. Not yet pub- lished, but should be a much improved version of the MIT X Toolkit intrinsics manual. McCormack, Joel, "Smart Code, Stupid Memory: A Fast X Server for a Dumb ColorFrame Buffer," DEC Western Research Laboratory Technical Note 9, September, 1989. Describes the implemen- tation of one of the best X servers currently available, that of the color DECstation 3100. Algorithms as well as performance measurements are discussed. McLoughlin, Lee, "A Simple Guide to Porting the X Window System," in _P_r_o_c_e_e_d_i_n_g_s _o_f _E_E_U_G _S_p_r_i_n_g _1_9_8_9, pp. 283-291, Brussels, April 3-7, 1989. A brief, but good, discussion of the in- terface between the X server and the underlying operating system. MIPS Staff, "Graphical User Interfaces Now," _M_I_P_S _M_a_g_a_z_i_n_e, vol. 1, no. 11, pp. 42-50, November, 1989. A comparison of popu- lar user interfaces including Microsoft Presentation Manager, NextStep, Macintosh, Motif, and Open Look. Motif and Open Look are both available for the X Window System. The X.desktop and Looking Glass UNIX file managers, both based on X, are also mentioned. Morris, Robert R. and William E. Brooks, "Unix Versus OS/2: A Graphical Comparison," _P_C _T_e_c_h _J_o_u_r_n_a_l, vol. 7, no. 2, February, 1989. A comparison of X and Presentation Manager. I think this is the same Robert Morris that is internation- ally famous for his work in computer networking. Myers, Brad A., "Window Interfaces: A Taxonomy of Window Manager User Interfaces," _I_E_E_E _C_o_m_p_u_t_e_r _G_r_a_p_h_i_c_s & _A_p_p_l_i_c_a_t_i_o_n_s, vol. 8, no. 5, pp. 65-84, September, 1988. A taxonomy of - 4 - current window system user interfaces, including the X UWM window manager. Discusses and compares the features of each user interface. Myers is a well known user interface researcher. Nadeau, David R., "High-Performance 3-D Graphics In A Window En- vironment," _C_o_m_p_u_t_e_r _T_e_c_h_n_o_l_o_g_y _R_e_v_i_e_w, pp. 89-93, Fall, 1988. A discussion on integrating Megatek's high- performance 3D graphics hardware/software with X. Nye, Adrian, "The X Window System Protocol," _U_N_I_X _W_o_r_l_d, pp. 105-113, September, 1989. A high-level description of the X protocol. O'Reilly, Tim, "The Toolkits (and Politics) of X Windows," _U_N_I_X _W_o_r_l_d, vol. 6, no. 2, pp. 66-73, February, 1989. An intro- duction to some of the popular widget sets available for the X Toolkit. O'Reilly and Associates, _T_h_e _X _W_i_n_d_o_w _S_y_s_t_e_m _S_e_r_i_e_s (_4 _v_o_l_u_m_e_s), O'Reilly and Associates, 1988. ISBN 0-937175-26-9, 0- 937175-27-7. This set of books is mostly based on the MIT X11R2 manuals. Volume 0 covers the X protocol and is almost identical to the MIT manual. Volume 1 is a tutorial on Xlib, which includes some good tutorial material, but is not as practical as the Jones book. Volume 2, an Xlib manual in man page format, is similar to, but slightly better organized than, the MIT man pages. Volume 3 contains man pages for some of the popular X clients (window managers, terminal emulators, etc.). Future volumes will reportedly cover the X Toolkit, XView, and Motif. Written by technical writers, these are probably the most professional looking of the X books. Pike, Rob, "Window Systems Should Be Transparent," _U_S_E_N_I_X _C_o_m_p_u_t_- _i_n_g _S_y_s_t_e_m_s, vol. 1, no. 3, pp. 279-296, Summer, 1988. Some window system user interface guidelines, based on MUX window system for the BLIT terminal, with some comparisons to X. Contrast this to Myers' paper. Pike is the developer of the BLIT. Pike, Rob, "A Concurrent Window System," _U_S_E_N_I_X _C_o_m_p_u_t_i_n_g _S_y_s_- _t_e_m_s, vol. 2, no. 2, pp. 133-153, Spring, 1989. A descrip- tion of a multi-threaded window system written using a con- current programming language. The design is shown to be simpler than the single threaded design of X. Probst, Richard, "OPEN LOOK Toolkits," _S_u_n_T_e_c_h_n_o_l_o_g_y, vol. 1, no. 4, pp. 76-86, Autumn, 1988. OPEN LOOK is a user interface specification designed by AT&T and Sun. This paper discusses OPEN LOOK programming toolkits, including two for the X Win- dow System. - 5 - Rao, R. and S. Wallace, "The X Toolkit," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _S_u_m_m_e_r, _1_9_8_7 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e. Rochkind, Marc J., "XVT: A Virtual Toolkit for Portability Between Window Systems," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _W_i_n_t_e_r, _1_9_8_9 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 151-163. Describes the Extensible Virtual Toolkit (XVT), a user interface toolkit that pro- vides a uniform application programming interface to several different window systems, while providing the ``look and feel'' appropriate for the window system. Supported window systems include X11, MS-Windows, OS/2 Presentation Manager, and the Macintosh. Rosenthal, David S., "A Simple X.11 Client Program, or, How Hard Can It Really Be to Write `Hello, World'?," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _W_i_n_t_e_r, _1_9_8_8 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 229-235. A ver- sion of the "hello, world" paper, presenting and comparing the basics of the X library and the X Toolkit. All poten- tial X programmers (Xlib or X toolkit) should understand everything in this paper before they attempt writing any X programs. Included in the MIT X distribution. Rosenthal, David S., "Going For Baroque," _U_N_I_X _R_e_v_i_e_w, vol. 6, no. 6, pp. 71-79. Another version of the "hello, world" pa- per. Rost, Randi, Jeffrey Friedberg, and Peter Nishimoto, "PEX: A Network-Transparent 3D Graphics System," _I_E_E_E _C_o_m_p_u_t_e_r _G_r_a_p_h_i_c_s & _A_p_p_l_i_c_a_t_i_o_n_s, pp. 14-26, July, 1989. A good overview of PEX, the PHIGS extension to X. Rost, Randi J., "Adding a Dimension to X," _U_N_I_X _R_e_v_i_e_w, vol. 6, no. 10, pp. 51-59. A description of the PEX 3D extension to X. Schaufler, Robin, "X11/NeWS Design Overview," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _S_u_m_m_e_r, _1_9_8_8 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 23-35. Discusses Sun's X/NeWS server. Compares the functionality of X and NeWS and describes a server that merges the two. Scheifler, Robert, James Gettys, and Ron Newman, _X _W_i_n_d_o_w _S_y_s_t_e_m: _C _L_i_b_r_a_r_y _a_n_d _P_r_o_t_o_c_o_l _R_e_f_e_r_e_n_c_e, DEC Press, 1988. ISBN 1- 55558-012-2. The Xlib bible by the authors of X11. Includes detailed descriptions of the X protocol and all Xlib func- tions and data structures. Required for all serious Xlib programmers, but may be rough going for those with little experience in interactive computer graphics. Shipped with the X11R3 tapes. An X11R4 version of this book will probably be shipped with X11R4. Scheifler, Robert W. and Jim Gettys, "The X Window System," _A_C_M _T_r_a_n_s_a_c_t_i_o_n_s _o_n _G_r_a_p_h_i_c_s, vol. 5, no. 2, pp. 79-109, April, 1986. The first published description of X. Although it discusses X10, it is still one of the most comprehensive - 6 - descriptions of X. An updated X11 version is reportedly be- ing written by Jim Gettys. Schuman, Evan, "Motif Holds Top Card In GUI Hand," _U_N_I_X _T_o_d_a_y, p. 1, July 10, 1989. Presents the results of a survey of software vendors on their preference of Open Look vs. Motif. Seither, Mike, "Terminal Vendors Stake Out X Window Display Ter- ritories," _M_i_n_i-_M_i_c_r_o _S_y_s_t_e_m_s, pp. 24-29, February, 1989. An introduction to the rapidly growing X terminal industry, including descriptions of terminals from Networking Comput- ing Devices, Visual Technologies, Acer Counterpoint, and GraphOn. Swick, Ralph R. and Mark S. Ackerman, "The X Toolkit: More Bricks for Building User Interfaces," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _W_i_n_t_e_r, _1_9_8_8 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 221-233. An introduc- tion to the X Toolkit. Describes the toolkit architecture and the basic Athena widgets. Thomas, Spencer W. and Martin Friedmann, "PEX - A 3-D Extension to X Windows," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _W_i_n_t_e_r, _1_9_8_9 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 139-149. Describes the demonstration imple- mentation of PEX, the PHIGS/PHIGS+ 3D extension to X. Source code for this demonstration is included with X11R3. A complete PEX is currently being developed by Sun under con- tract to the MIT X Consortium and is scheduled to be publi- cally available in 1990. Young, Doug, _X _W_i_n_d_o_w _S_y_s_t_e_m_s _P_r_o_g_r_a_m_m_i_n_g _a_n_d _A_p_p_l_i_c_a_t_i_o_n_s _W_i_t_h _X_t, Prentice-Hall. ISBN 0-13-972167-3. An excellent tutori- al on programming with the Xt intrinsics. Examples in this book use the HP widgets, but a Motif edition will released this fall. -- Ken Lee DEC Western Software Laboratory, Palo Alto, Calif. Internet: klee@decwrl.dec.com uucp: uunet!decwrl!klee
klee@decwrl.dec.com (Ken Lee) (01/03/90)
Here's the latest edition of my X bibliography. There is literally tons of published material on X, so I'm trying to include only technically useful material. Please send any updates to me. I'll try to post updates every month or two. It uses UNIX-style backspace-underlining. If your printer has trouble with that, you can filter it out with UNIX "col" program or something similar with other operating systems. Ken ============================ _X _T_E_C_H_N_I_C_A_L _B_I_B_L_I_O_G_R_A_P_H_Y compiled by Ken Lee please send updates to klee@wsl.dec.com or decwrl!klee January 2, 1990 Asente, Paul, "Simplicity and Productivity," _U_N_I_X _R_e_v_i_e_w, vol. 6, no. 9, pp. 57-63. A discussion on the classing mechanism in the X Toolkit. ASP, Inc., _X _M_a_n_u_a_l _S_e_t (_3 _v_o_l_u_m_e_s), ASP, Inc., 1989. A copy of the MIT X11R3 manual set. Volume 1 covers popular client programs. Volume 2 covers Xlib. Volume 3 covers Xt and the Athena widgets. An upcoming Volume 4 covers Motif. ASP, Inc., _X _R_e_f_e_r_e_n_c_e _S_e_t (_3 _v_o_l_u_m_e_s), ASP, Inc., 1989. A 3 volume set of quick reference guides covering Xlib, Xt, Athena widgets, and popular clients. Baldwin, Howard, "Why All The Shouting Over X Terminals?," _U_N_I_X _W_o_r_l_d, _N_e_t_- _w_o_r_k_i_n_g _S_u_p_p_l_e_m_e_n_t, pp. 75-81, 1989. A broad look at X terminals, with details on 6 vendor's products. Brunet, James, "Using PC's at X Servers," _U_N_I_X _W_o_r_l_d, _N_e_t_w_o_r_k_i_n_g _S_u_p_p_l_e_- _m_e_n_t, pp. 83-85, 1989. An introduction to X server software for IBM PC's. Brunhoff, Todd, "Pleasing The Eye," _U_N_I_X _R_e_v_i_e_w, vol. 7, no. 10, pp. 64-72, November, 1989. An introduction to VEX, one of the proposed video ex- tensions to X. Cashin, Jerry, "Many Struggle to Set Laws of Windows Game," _S_o_f_t_w_a_r_e _M_a_g_a_- _z_i_n_e, vol. 9, no. 2, pp. 74-79, February, 1989. A description of the players in the window system standards war. Includes a photo of Bob Scheifler. Champine, George, Bob Scheifler, Jim Gettys, Georges Grinstein, and Bertram Herzog, "Panel discussion on the X Window System," in _S_I_G_G_R_A_P_H'_8_8 _P_a_n_e_l _P_r_o_c_e_e_d_i_n_g_s, August, 1988. This is the transcript of an in- teresting panel discussion on X. George Champine was moderator. Panel- ists were Bob Scheifler, Jim Gettys, Georges Grinstein, and Bertram Herzog. The panelists discussed the history of X and current work at/on the X Consortium, PEX, and national and international standards for X. This was followed by a lively question and answer session on the present and future of X. Farrow, Rik, "Before their time?," _U_N_I_X _W_o_r_l_d, pp. 75-81, July, 1989. This article describes X terminals in general and compares two models. The comparison is, unfortunately, not especially meaningful. Gancarz, M., "UWM: A User Interface for X Windows," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _S_u_m_m_e_r, _1_9_8_6 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 429-440. Describes UWM, the first good window manager for X. - 2 - Gettys, Jim, "Problems Implementing Window Systems in UNIX," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _W_i_n_t_e_r, _1_9_8_6 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 89-97. Describes some of the early work on X, especially technical issues in implementing server-based window systems on UNIX systems. Hancock, Bill, "DECwindows: X'ing With A Vengeance," _D_E_C _P_r_o_f_e_s_s_i_o_n_a_l, vol. 8, no. 2, pp. 70-84, February, 1989. A description of DECwin- dows, DEC's product version of X. It includes enhanced X libraries, a tuned X server, a high-level user interface description language, and several X applications. Hopgood, F. R. A., _M_e_t_h_o_d_o_l_o_g_y _o_f _W_i_n_d_o_w _M_a_n_a_g_e_m_e_n_t, Springer-Verlag, New York, 1986. ISBN 0-387-16116-3. The proceedings of the important 1985 Alvey Workshop on Window Management. Many of the big names ap- parently were here. It includes interesting material on problems with UNIX window systems and proposed solutions. It also includes descriptions of early versions of current UNIX window systems, such as X and NeWS. Johnson, Eric and Kevin Reichard, _X _W_i_n_d_o_w _A_p_p_l_i_c_a_t_i_o_n_s _P_r_o_g_r_a_m_m_i_n_g, MIS: Press. ISBN 1-55828-016-2. Another tutorial on Xlib programming. This book has lots and lots of examples, but coverage of complex subjects is not as deep as Jones' book or as broad as the O'Reilly Xlib tutori- al. Unfortunately, many of the example programs are not well behaved, so be careful. Jones, Oliver, _I_n_t_r_o_d_u_c_t_i_o_n _t_o _t_h_e _X _W_i_n_d_o_w _S_y_s_t_e_m, Prentice-Hall, 1988. ISBN 0-13-499997-5. An excellent introduction to programming with Xlib. Written with the programmer in mind, this book includes many practical tips that are not written anywhere else. This book is not as broad as the O'Reilly Xlib tutorial and doesn't offer as many examples as the Johnson & Reichard book, but Jones is probably the most experi- enced X programmer of this group and this shows in the quality of the material in the book. Lee, Ed, "Window of Opportunity," _U_N_I_X _R_e_v_i_e_w, vol. 6, no. 6, pp. 47-61, June, 1988. This article proposes a user interface reference model and shows how X attempts to meet it. In the process, it presents a good, broad overview of X, its advantages, and its shortcomings. Leffler, Samuel J., "A Window On The Future?," _U_N_I_X _R_e_v_i_e_w, vol. 6, no. 6, pp. 62-69, June, 1988. This article compares NeWS with other window systems, such as X, and concludes that, despite its problems, NeWS is the window system of the future. See Robin Schaufler's paper for a more technical comparison of the X and NeWS. Lemke, David and David S. H. Rosenthal, "Visualizing X11 Clients," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _W_i_n_t_e_r, _1_9_8_9 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 125-138. A de- tailed look at ``visuals'', the X abstraction of display hardware capabilities. Proper use of visuals is necessary for an X client to take advantage of the capabilities of a server's hardware. Linton, Mark A., John M. Vlissides, and Paul R. Calder, "Composing User In- terfaces with InterViews," _I_E_E_E _C_o_m_p_u_t_e_r, vol. 22, no. 2, pp. 65-84, - 3 - February, 1989. Describes the InterViews user interface toolkit, written in C++ and based on the X Window System. Even if you don't plan to use InterViews as a toolkit, it provides a good C++ binding to the X protocol. Macklem, Rick, Jim Linders, and Hugh Smith, "G Shell Environment," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _S_u_m_m_e_r, _1_9_8_8 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 15-22. Describes a rudimentary graphical UNIX shell written as a X client. McCormack, Joel and Paul Asente, "Using the X Toolkit or How to Write a Widget," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _S_u_m_m_e_r, _1_9_8_8 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 1- 13. An excellent tutorial on writing basic X Toolkit widgets. Poten- tial widget writers (and maybe users, too) should probably start by reading this paper. Unfortunately, it's based on X11R2, so some of it is out of date. McCormack, Joel and Paul Asente, "An Overview of the X Toolkit," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _A_C_M _S_I_G_G_R_A_P_H _S_y_m_p_o_s_i_u_m _o_n _U_s_e_r _I_n_t_e_r_f_a_c_e _S_o_f_t_w_a_r_e, pp. 46-55, October, 1988. An excelent architectural overview of the X Toolkit, including its goals, how it accomplished them, and possible future directions. McCormack, Joel, Paul Asente, and Ralph Swick, _X _T_o_o_l_k_i_t _I_n_t_r_i_n_s_i_c_s - _C _L_a_n_g_u_a_g_e _I_n_t_e_r_f_a_c_e, DEC Press, 1989. Not yet published, but should be a much improved version of the MIT X Toolkit intrinsics manual, by the same authors. McCormack, Joel, "Smart Code, Stupid Memory: A Fast X Server for a Dumb ColorFrame Buffer," DEC Western Research Laboratory Technical Note 9, September, 1989. Describes the implementation of one of the best X servers currently available, that of the color DECstation 3100. Algo- rithms as well as performance measurements are discussed. For informa- tion on obtaining free copies of this report, send eletronic mail to ``wrl-techreports@decwrl.dec.com''. Your message should contain the single word ``help''. McLoughlin, Lee, "A Simple Guide to Porting the X Window System," in _P_r_o_c_e_e_d_i_n_g_s _o_f _E_U_U_G _S_p_r_i_n_g _1_9_8_9, pp. 283-291, Brussels, April 3-7, 1989. A brief, but good, discussion of the interface between the X server and the underlying operating system. MIPS Staff, "Graphical User Interfaces Now," _M_I_P_S _M_a_g_a_z_i_n_e, vol. 1, no. 11, pp. 42-50, November, 1989. A comparison of popular user interfaces including Microsoft Presentation Manager, NextStep, Macintosh, Motif, and Open Look. Motif and Open Look are both available for the X Win- dow System. The IXI X.desktop and Visix Looking Glass UNIX file managers, both based on X, are also mentioned. See also the review by Alan Southerton. Myers, Brad A., "Window Interfaces: A Taxonomy of Window Manager User In- terfaces," _I_E_E_E _C_o_m_p_u_t_e_r _G_r_a_p_h_i_c_s & _A_p_p_l_i_c_a_t_i_o_n_s, vol. 8, no. 5, pp. 65-84, September, 1988. A taxonomy of current window system user in- terfaces, including the UWM window manager for X. Discusses and com- pares the features of each user interface. Contrast this with Rob - 4 - Pike's window system user interface guidelines. Myers is a well known user interface researcher. Nadeau, David R., "High-Performance 3-D Graphics In A Window Environment," _C_o_m_p_u_t_e_r _T_e_c_h_n_o_l_o_g_y _R_e_v_i_e_w, pp. 89-93, Fall, 1988. A discussion on integrating Megatek's high-performance 3D graphics hardware/software with X. Nye, Adrian, "The X Window System Protocol," _U_N_I_X _W_o_r_l_d, vol. 6, no. 9, pp. 105-113, September, 1989. An introduction to the X protocol. This is a short version of Nye's introduction to Volume 0 of O'Reilly's X series. O'Reilly, Tim, "The Toolkits (and Politics) of X Windows," _U_N_I_X _W_o_r_l_d, vol. 6, no. 2, pp. 66-73, February, 1989. An introduction to some of the popular widget sets available for the X Toolkit. O'Reilly and Associates, _T_h_e _X _W_i_n_d_o_w _S_y_s_t_e_m _S_e_r_i_e_s (_4 _v_o_l_u_m_e_s), O'Reilly and Associates, 1988, 1989. ISBN 0-937175-26-9, 0-937175-27-7, etc. This is a 4 (and growing) volume set of books. Volume 1 is a tutorial on Xlib. It's broader than the others (Jones, Johnson & Reichard), but offers fewer examples or practical tips. Volumes 0, 2, and 3 are ap- proximately the same as the MIT manuals (protocol manual, Xlib manual pages, and popular client manual pages). Most of these were originally written for X11R2, but newer printing include changes for X11R3. Fu- ture volumes will reportedly cover the X Toolkit intrinsics, XView, and Motif. Written by technical writers, these are probably the most professional looking of the X books. Pike, Rob, "Window Systems Should Be Transparent," _U_S_E_N_I_X _C_o_m_p_u_t_i_n_g _S_y_s_- _t_e_m_s, vol. 1, no. 3, pp. 279-296, Summer, 1988. Some window system user interface guidelines, based on MUX window system for the BLIT terminal, with some comparisons to X. Contrast this to Myers' paper. Pike is the developer of the BLIT. Pike, Rob, "A Concurrent Window System," _U_S_E_N_I_X _C_o_m_p_u_t_i_n_g _S_y_s_t_e_m_s, vol. 2, no. 2, pp. 133-153, Spring, 1989. A description of a multi-threaded window system written using a concurrent programming language. The design is shown to be simpler than the single threaded design of X. Probst, Richard, "OPEN LOOK Toolkits," _S_u_n_T_e_c_h_n_o_l_o_g_y, vol. 1, no. 4, pp. 76-86, Autumn, 1988. OPEN LOOK is a user interface specification designed by AT&T and Sun. This paper discusses OPEN LOOK programming toolkits, including two for the X Window System. Rao, R. and S. Wallace, "The X Toolkit," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _S_u_m_m_e_r, _1_9_8_7 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e. Describes an early version of the X Toolkit. Rochkind, Marc J., "XVT: A Virtual Toolkit for Portability Between Window Systems," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _W_i_n_t_e_r, _1_9_8_9 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 151-163. Describes the Extensible Virtual Toolkit (XVT), a user in- terface toolkit that provides a uniform application programming inter- face to several different window systems, while providing the ``look and feel'' appropriate for the window system. Supported window sys- - 5 - tems include X11, Microsoft Windows, OS/2 Presentation Manager, and the Macintosh. Rosenthal, David, "Window Exchange," _U_N_I_X _R_e_v_i_e_w, vol. 7, no. 12, December, 1989. An excelent review of X client interoperability, by the author of the X11R4 Inter-Client Communication Conventions Manual (IC3M). Rosenthal, David S. H., "A Simple X11 Client Program," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _W_i_n_t_e_r, _1_9_8_8 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 229-235. A version of the ``hello, world'' paper, presenting and comparing the basics of the X library and the X Toolkit. All potential X programmers (Xlib or X toolkit) should understand everything in this paper before they at- tempt to write any X programs. Included in the MIT X distribution and reprinted as ``Going for Baroque'' in the June, 1988 issue of _U_N_I_X _R_e_- _v_i_e_w magazine. Rost, Randi, Jeffrey Friedberg, and Peter Nishimoto, "PEX: A Network- Transparent 3D Graphics System," _I_E_E_E _C_o_m_p_u_t_e_r _G_r_a_p_h_i_c_s & _A_p_p_l_i_c_a_- _t_i_o_n_s, pp. 14-26, July, 1989. A good overview of PEX, the PHIGS/PHIGS+ 3D extension to X. A complete PEX is currently being developed by Sun under contract to the MIT X Consortium and is scheduled to be publically available in 1990. See also the Thomas & Friedmann paper on PEX. Schaufler, Robin, "X11/NeWS Design Overview," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _S_u_m_m_e_r, _1_9_8_8 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 23-35. Discusses Sun's X/NeWS server. Compares the functionality of X and NeWS and describes a server that merges the two. Scheifler, Robert and Jim Gettys, "The X Window System," _A_C_M _T_r_a_n_s_a_c_t_i_o_n_s _o_n _G_r_a_p_h_i_c_s, vol. 5, no. 2, pp. 79-109, April, 1986. The first pub- lished description of X. Although it discusses X10, it is still one of the most comprehensive overviews of X. An updated X11 version is reportedly being written by Jim Gettys. Scheifler, Robert, James Gettys, and Ron Newman, _X _W_i_n_d_o_w _S_y_s_t_e_m: _C _L_i_- _b_r_a_r_y _a_n_d _P_r_o_t_o_c_o_l _R_e_f_e_r_e_n_c_e, DEC Press, 1988. ISBN 1-55558-012-2. The Xlib bible by the authors of X11. It is shipped with the X11R3 tapes. Includes detailed descriptions of the X protocol and all Xlib functions and data structures. Required for all serious Xlib program- mers, but may be rough going for those with little experience in in- teractive computer graphics. An X11R4 version of this book is in preparation. Southerton, Alan, "Friendly Desktops," _U_N_I_X _W_o_r_l_d, vol. 6, no. 11, pp. 68- 73, November, 1989. Another comparison of X-based UNIX file managers, including Non Standard Logic InDepth, IXI X.Desktop, Visix Looking Glass, AT&T Open Look, Torch Technologies Y-OpenTop, and Softscience Convenience Plus. See also the review by MIPS. Swick, Ralph R. and Mark S. Ackerman, "The X Toolkit: More Bricks for Building User Interfaces," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _W_i_n_t_e_r, _1_9_8_8 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 221-233. An introduction to the X Toolkit. Describes the toolkit architecture and the basic Athena widgets. - 6 - Thomas, Spencer W. and Martin Friedmann, "PEX - A 3-D Extension to X Win- dows," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _W_i_n_t_e_r, _1_9_8_9 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 139- 149. Describes the demonstration implementation of PEX, the PHIGS/PHIGS+ 3D extension to X. A complete PEX is currently being developed by Sun under contract to the MIT X Consortium and is scheduled to be publically available in 1990. See also the Rost, _e_t _a_l, paper on PEX. Wood, Patrick, "Introduction to Xlib Programming (2 parts)," _U_N_I_X _W_o_r_l_d, vol. 6, October-November, 1989. This is a two part tutorial article on Xlib programming. Not as good as Rosenthal's ``hello, world'' arti- cle. X/Open Company, Ltd., _X/_O_p_e_n _P_o_r_t_a_b_i_l_i_t_y _G_u_i_d_e: _W_i_n_d_o_w _M_a_n_a_g_e_m_e_n_t, Prentice-Hall, 1988. X/Open is an international user group of UNIX hardware and software developers. It publishes portability guidelines with the goal that developers that follow these guidelines will be portable across other hardware and software supporting the guidelines. The X/Open window management guidelines are based on the X11R3 specif- ications. Young, Doug, _X _W_i_n_d_o_w _S_y_s_t_e_m_s _P_r_o_g_r_a_m_m_i_n_g _a_n_d _A_p_p_l_i_c_a_t_i_o_n_s _W_i_t_h _X_t, Prentice-Hall, 1989 An excellent (and currently the only) tutorial on programming with the X Toolkit intrinsics. Examples in this book use the HP widgets, but a Motif edition is scheduled to be released soon.. ISBN 0-13-972167-3. Young, Doug, _X _W_i_n_d_o_w _S_y_s_t_e_m_s _P_r_o_g_r_a_m_m_i_n_g _a_n_d _A_p_p_l_i_c_a_t_i_o_n_s _W_i_t_h _X_t, _O_S_F/_M_o_t_i_f _E_d_i_t_i_o_N, Prentice-Hall, 1990 The Motif version of this ex- celent book on X Toolkit programming is due out on January 14, 1990.. ISBN 0-13-497-074-8. Young, Doug, "Programming with the X Toolkit (3 parts)," _U_N_I_X _W_o_r_l_d, vol. 7, January-March, 1990. This three part tutorial article is based on Young's book on the X Toolkit. -- Ken Lee DEC Western Software Laboratory, Palo Alto, Calif. Internet: klee@decwrl.dec.com uucp: uunet!decwrl!klee
klee@decwrl.dec.com (Ken Lee) (11/02/90)
>from: klee@wsl.dec.com (Ken Lee)
This is the latest version of my bibliography of good X Window System technical
material. There's alot of other stuff out there, but I think these are the
best references. If you know of any other good ones, please let me know.
Many people have been asking questions about the bibliography. No, I'm not
distributing it in any other format. If your printer can't handle the UNIX-
style underlining, run it through the UNIX col filter or the equivalent on your
system. Yes, I do accept (and appreciate) review copies of material. Yes, you
may put copies of this in your books, but please let me know and include the
date and contact info from the header. Updates to this bibliography will be
sent to comp.windows.x USENET group and xpert mailing list and placed in:
expo:/contrib/Xbibliography and
gatekeeper.dec.com:/archive/pub/X11/contrib/Xbibliography
approximately once a month. Please do not ask me for updates other than these.
Sorry, I am not able to distribute copies of the material mentioned here. Your
librarian or bookstore should be able to help you.
Ken
================================ cut here ================================
X TECHNICAL BIBLIOGRAPHY
please send updates to:
Ken Lee, DEC WSL, 181 Lytton Ave., Palo Alto, CA 94301
Internet: klee@wsl.dec.com, UUCP: uunet!decwrl!klee
November 1, 1990
Angebranndt, Susan, Raymond Drewry, Philip Karlton, Todd Newman, Bob
Scheifler, and Keith Packard, _D_e_f_i_n_i_t_i_o_n _o_f _t_h_e _P_o_r_t_i_n_g _L_a_y_e_r _f_o_r _t_h_e
_X _v_1_1 _S_a_m_p_l_e _S_e_r_v_e_r, 1988-1990. A detailed reference to the modules
of the sample server. This is a companion to "Strategies for Porting
the X v11 Sample Server" by the same authors. Both are included in the
MIT X11R4 distribution.
Angebranndt, Susan, Raymond Drewry, Philip Karlton, Todd Newman, Bob
Scheifler, and Keith Packard, _S_t_r_a_t_e_g_i_e_s _f_o_r _P_o_r_t_i_n_g _t_h_e _X _v_1_1 _S_a_m_p_l_e
_S_e_r_v_e_r, 1988-1990. A guide to strategies for porting the sample
server. This is a companion to "Definition of the Porting Layer for
the X v11 Sample Server" by the same authors. Both are included in
the MIT X11R4 distribution.
Angebranndt, Susan and Todd Newman, "The Sample X11 Server Architecture,"
_D_i_g_i_t_a_l _T_e_c_h_n_i_c_a_l _J_o_u_r_n_a_l, vol. 2, no. 3, pp. 16-23, Summer, 1990. An
overview of the sample server, including goals, problem areas,
modules, and porting guidelines.
Asente, Paul, "Simplicity and Productivity," _U_N_I_X _R_e_v_i_e_w, vol. 6, no. 9,
pp. 57-63. A discussion on the classing mechanism in the X Toolkit.
Asente, Paul J. and Ralph R. Swick, _X _W_i_n_d_o_w _S_y_s_t_e_m _T_o_o_l_k_i_t, DEC Press,
1990. ISBN 1-55558-051-3. The X Toolkit bible, a companion to
Sheifler & Gettys book on Xlib and the X protocol. It includes both a
tutorial on programming with the X Toolkit and a formal specification
of the toolkit. The tutorial, which covers both using and writing
widgets, is comprehensive and excelent. The specification is an
enhancement of the MIT Xt intrinsics manual, by the same authors.
Bass, Len, Erik Hardy, Reed Little, and Robert Seacord, "Serpent Overview,"
CMU/SEI-89-UG-2, Software Engineering Institute, Carnegie Mellon
University, Pittsburgh, PA.. An overview and tutorial of the Serpent
User Interface Management System. Serpent is a UIMS implemented on
top of several X toolkits. This paper, as well as the Serpent source
code, is included in the MIT X11R4 distribution.
Borenstein, Nathaniel S., _M_u_l_t_i_m_e_d_i_a _A_p_p_l_i_c_a_t_i_o_n_s _D_e_v_e_l_o_p_m_e_n_t _w_i_t_h _t_h_e _A_n_-
_d_r_e_w _T_o_o_l_k_i_t, Prentice Hall, 1990. ISBN 0-13-036633-1. A tutorial and
reference manual for the Andrew toolkit. Andrew is an applications
toolkit implemented on several window systems, including X. It is in-
cluded in the MIT X distribution.
Bourne, Philip E. and Lawrence S. Shapiro, "Developing with DECwindows,"
_D_E_C _P_r_o_f_e_s_s_i_o_n_a_l, vol. 9, no. 2, pp. 36-44, February, 1990. A
description of DECwindows programming, focusing the User Interface
- 2 -
Language (UIL). UIL is used by both DECwindows and OSF/Motif.
Brunet, James, "Using PC's at X Servers," _U_N_I_X _W_o_r_l_d, _N_e_t_w_o_r_k_i_n_g _S_u_p_p_l_e_-
_m_e_n_t, pp. 83-85, 1989. An introduction to X server software for IBM
PC's.
Brunhoff, Todd, "Pleasing The Eye," _U_N_I_X _R_e_v_i_e_w, vol. 7, no. 10, pp. 64-72.
An introduction to VEX, a proposed video extensions to X.
Champine, George, Bob Scheifler, Jim Gettys, Georges Grinstein, and Bertram
Herzog, "Panel discussion on the X Window System," in _S_I_G_G_R_A_P_H'_8_8
_P_a_n_e_l _P_r_o_c_e_e_d_i_n_g_s, August, 1988. This is the transcript of an in-
teresting panel discussion on X. George Champine was moderator. Panel-
ists were Bob Scheifler, Jim Gettys, Georges Grinstein, and Bertram
Herzog. The panelists discussed the history of X and current work
at/on the X Consortium, PEX, and national and international standards
for X. This was followed by a lively question and answer session on
the present and future of X.
Clifford, William, John McConnell, and Jeffrey Friedberg, "The Development
of PEX, A Three-dimensional Graphics Extension to X11," in _P_r_o_c_e_e_d_i_n_g_s
_o_f _E_u_r_o_g_r_a_p_h_i_c_s'_8_8, September, 1988. An overview PEX, an extension to
the X protocol to support PHIGS+.
Dolan, Michael A. and Larry Hare, "X Window System Servers in Embedded Sys-
tems," in _P_r_o_c_e_e_d_i_n_g_s _o_f _C_O_M_P_C_O_N _S_p_r_i_n_g _1_9_9_0, pp. 314-319, February,
1990. A discussion of X server architectures for embedded systems,
such as accelerator boards and standalone terminals.
Gettys, Jim, "Problems Implementing Window Systems in UNIX," in _P_r_o_c_e_e_d_i_n_g_s
_o_f _t_h_e _W_i_n_t_e_r, _1_9_8_6 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 89-97. Describes some of
the early work on X, especially technical issues in implementing
server-based window systems on UNIX systems.
Gettys, Jim, "Network Windowing using the X Window System," _D_r. _D_o_b_b'_s
_J_o_u_r_n_a_l, pp. 42-53, March, 1989. A discussion on the importance of
networking for window systems.
Good, Michael, "User Interface Consistency in the DECwindows Program," in
_P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _H_u_m_a_n _F_a_c_t_o_r_s _S_o_c_i_e_t_y, _V_o_l. _1, 1988. A discussion
of user interface design techniques used in developing the DECwindows
toolkit.
Greenwood, Stephen, "The DECwindows User Interface Language," _D_i_g_i_t_a_l
_T_e_c_h_n_i_c_a_l _J_o_u_r_n_a_l, vol. 2, no. 3, pp. 34-43, Summer, 1990. An over-
view of the DECwindows user interface language (UIL). UIL allows pro-
grammers to specify and configure the X Toolkit widget hierarchy at
run-time. This is very useful for rapid prototyping and international-
ization. UIL is used by both DECwindows and Motif.
Hayes, Frank, "X Terminals vs. Diskless Workstations," _U_N_I_X _W_o_r_l_d, vol. 7,
no. 10, pp. 83-86, October, 1990. A look at some of the tradeoffs
between using X terminals and diskless workstations.
- 3 -
Heller, Dan, "The XView Toolkit (2 parts)," _U_N_I_X _R_e_v_i_e_w, vol. 7, no. 6-7,
June-July, 1990. A two part tutorial on XView, presumably based on
Volume 7 of the O'Reilly series. XView is a user interface toolkit for
X. It is similar to, but not currently compatible with, MIT's X Toolk-
it.
Hopgood, F. R. A., _M_e_t_h_o_d_o_l_o_g_y _o_f _W_i_n_d_o_w _M_a_n_a_g_e_m_e_n_t, Springer-Verlag, New
York, 1986. ISBN 0-387-16116-3. The proceedings of the important
1985 Alvey Workshop on Window Management. It includes interesting ma-
terial on problems with UNIX window systems and proposed solutions. It
also includes descriptions of early versions of current UNIX window
systems, such as X and Sun's NeWS.
Johnson, Eric and Kevin Reichard, _X _W_i_n_d_o_w _A_p_p_l_i_c_a_t_i_o_n_s _P_r_o_g_r_a_m_m_i_n_g, MIS:
Press, 1989. ISBN 1-55828-016-2. Another tutorial on Xlib program-
ming. This book has lots and lots of examples, but coverage of complex
subjects is not as deep as Jones' book or as broad as the O'Reilly
Xlib tutorial. Unfortunately, many of the example programs are not
well behaved, so be careful.
Johnson, Eric and Kevin Reichard, _A_d_v_a_n_c_e_d _X _W_i_n_d_o_w _A_p_p_l_i_c_a_t_i_o_n_s _P_r_o_g_r_a_m_-
_m_i_n_g, MIS: Press, 1990 An "advanced" version of the authors' previous
book. Only Xlib programming is convered. The X11R4 ICCCM section is
good, but, aside from that, this isn't much advanced over Oliver Jones
book.. ISBN 1-55828-016-2.
Jones, Oliver, _I_n_t_r_o_d_u_c_t_i_o_n _t_o _t_h_e _X _W_i_n_d_o_w _S_y_s_t_e_m, Prentice-Hall, 1988,
1989. ISBN 0-13-499997-5. An excellent introduction to programming
with Xlib. Written with the programmer in mind, this book includes
many practical tips that are not found anywhere else. This book is not
as broad as the O'Reilly Xlib tutorial and doesn't offer as many exam-
ples as the Johnson & Reichard book, but Jones is probably the most
experienced X programmer of this group and this shows in the quality
and depth of the material in the book. Originally written for X11R1,
recent printings have included corrections and additions. The sixth
printing should have X11R4 material.
Kent, Christopher, "XDPS: A Display PostScript System Extension for
DECwindows," _D_i_g_i_t_a_l _T_e_c_h_n_i_c_a_l _J_o_u_r_n_a_l, vol. 2, no. 3, pp. 64-73, Sum-
mer, 1990. An overview of Display PostScript, an extension to the X
protocol allowing PostScript graphics in X windows.
Leffler, Samuel J., "A Window On The Future?," _U_N_I_X _R_e_v_i_e_w, vol. 6, no. 6,
pp. 62-69. This article compares Sun's NeWS with other window sys-
tems, such as X, and concludes that, despite its problems, NeWS is the
window system of the future. See Robin Schaufler's paper for a more
technical comparison of the X and NeWS.
Lemke, David and David S. H. Rosenthal, "Visualizing X11 Clients," in
_P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _W_i_n_t_e_r, _1_9_8_9 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 125-138. A tu-
torial on ``visuals'', the X abstraction of display hardware capabili-
ties. Proper use of visuals is necessary for an X client to take ad-
vantage of the capabilities of a server's hardware. Included in the
MIT X distribution (X11R4/doc/tutorials/visuals).
- 4 -
Lemon, Bob, "X Terminals Put to the Test," _U_N_I_X _W_o_r_l_d, vol. 7, no. 10, pp.
106-114, October, 1990. Another look at the X terminal market.
Levitt, Jason, "XVT: Safe Haven In The GUI Wars," _U_N_I_X _T_o_d_a_y, p. 56+, Oc-
tober 29, 1990. A review of XVT, a software package that claims to
provide a common API for developing user interfaces for Motif, Macin-
tosh, Microsoft Windows, Presentation Manager, and dumb character
terminals. See also Marc Rochkind's USENIX paper.
Linton, Mark A., John M. Vlissides, and Paul R. Calder, "Composing User In-
terfaces with InterViews," _I_E_E_E _C_o_m_p_u_t_e_r, vol. 22, no. 2, pp. 8-22,
February, 1989. Describes the InterViews user interface toolkit,
written in C++ and based on the X Window System. Even if you don't
plan to use InterViews as a toolkit, it provides a good C++ binding to
the X protocol.
Macklem, Rick, Jim Linders, and Hugh Smith, "G Shell Environment," in
_P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _S_u_m_m_e_r, _1_9_8_8 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 15-22.
Describes a rudimentary graphical UNIX shell written as a X client.
Mansfield, Niall, _T_h_e _X _W_i_n_d_o_w _S_y_s_t_e_m: _A _U_s_e_r'_s _G_u_i_d_e, Addison-Wesley, Am-
sterdam, 1990. ISBN 0-201-51341-2. A tutorial on X for end-users, not
programmers. The first edition of this book, based on X11R3, is
available only in Europe. The second edition, based on X11R4, should
be available in both Europe and the U.S. in the Spring of 1991.
McCormack, Joel and Paul Asente, "Using the X Toolkit or How to Write a
Widget," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _S_u_m_m_e_r, _1_9_8_8 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 1-
13. An excellent tutorial on writing basic X Toolkit widgets. Poten-
tial widget writers (and maybe users, too) should probably start by
reading this paper. Unfortunately, it's based on X11R2, so some of it
is out of date.
McCormack, Joel and Paul Asente, "An Overview of the X Toolkit," in
_P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _A_C_M _S_I_G_G_R_A_P_H _S_y_m_p_o_s_i_u_m _o_n _U_s_e_r _I_n_t_e_r_f_a_c_e _S_o_f_t_w_a_r_e,
pp. 46-55, October, 1988. An excellent architectural overview of the
X Toolkit, including its goals, how it accomplished them, and possible
future directions.
McCormack, Joel, "Smart Code, Stupid Memory: A Fast X Server for a Dumb
Color Frame Buffer," DEC Western Research Laboratory Technical Note 9,
September, 1989. Describes the implementation of one of the best X
servers currently available, that of the color DECstation 3100. Algo-
rithms as well as performance measurements are discussed. For informa-
tion on obtaining free copies of this report, send electronic mail to
``wrl-techreports@decwrl.dec.com''. Your message should contain the
single word ``help''.
McGregor, Scott, "An Overview of the DECwindows Architecture," _D_i_g_i_t_a_l
_T_e_c_h_n_i_c_a_l _J_o_u_r_n_a_l, vol. 2, no. 3, pp. 9-15, Summer, 1990. An overview
of DECwindows, a superset of X for DEC workstations.
McLoughlin, Lee, "A Simple Guide to Porting the X Window System," in
_P_r_o_c_e_e_d_i_n_g_s _o_f _E_U_U_G _S_p_r_i_n_g _1_9_8_9, pp. 283-291, Brussels, April 3-7,
- 5 -
1989. A brief, but good, discussion of the interface between the X
server and the underlying operating system. The EUUG conference is
sponsored by the European Unix Users' Group.
Mehta, Sunil, "User Interfaces and the IEEE P1201 Committee," _U_N_I_X _R_e_v_i_e_w,
vol. 8, no. 1, pp. 14-20. A review of the activities of the IEEE
P1201 standards committee, by its chairman. P1201 is developing inter-
national standards for the the X Window System libraries (Xlib and
above) and for user interface development tools based on X. Lower lev-
els of X (servers and protocol) are being standardized by ANSI Task
Group X3H3.6.
Mikes, Steven, _X _W_i_n_d_o_w _S_y_s_t_e_m _T_e_c_h_n_i_c_a_l _R_e_f_e_r_e_n_c_e, Addison-Wesley, 1990.
ISBN 0-201-52370-1. A quick reference manual for X11R3, including
Xlib, Xt, fonts, bitmaps, keysyms, Motif, and OPEN LOOK.
Miller, John David, _A_n _O_P_E_N _L_O_O_K _a_t _U_N_I_X: _A _D_e_v_e_l_o_p_e_r'_s _G_u_i_d_e _t_o _X, M&T
Books, 1990. ISBN 1-55-851057-5 A tutorial on the Open Look widget
set from AT&T. Contact M&T Books at 1-800-533-4372.
MIPS Staff, "Graphical User Interfaces Now," _M_I_P_S _M_a_g_a_z_i_n_e, vol. 1, no. 11,
pp. 42-50, November, 1989. A comparison of popular user interfaces
including Microsoft Presentation Manager, NextStep, Macintosh, Motif,
and Open Look. Motif and Open Look are both available for the X Win-
dow System. The IXI X.desktop and Visix Looking Glass UNIX file
managers, both based on X, are also mentioned.
Mirchandani, Dinesh and Prabuddha Biswas, "Ethernet Performance of Remote
DECwindows Applications," _D_i_g_i_t_a_l _T_e_c_h_n_i_c_a_l _J_o_u_r_n_a_l, vol. 2, no. 3,
pp. 84-94, Summer, 1990. Describes a methodology for analyzing the
performance of networked X applications.
Myers, Brad A., "Window Interfaces: A Taxonomy of Window Manager User In-
terfaces," _I_E_E_E _C_o_m_p_u_t_e_r _G_r_a_p_h_i_c_s & _A_p_p_l_i_c_a_t_i_o_n_s, vol. 8, no. 5, pp.
65-84, September, 1988. A taxonomy of current window system user in-
terfaces, including the UWM window manager for X. Discusses and com-
pares the features of each user interface. Contrast this with Rob
Pike's window system user interface guidelines. Myers is a well known
user interface researcher.
Nadeau, David R., "High-Performance 3-D Graphics In A Window Environment,"
_C_o_m_p_u_t_e_r _T_e_c_h_n_o_l_o_g_y _R_e_v_i_e_w, pp. 89-93, Fall, 1988. A discussion on
integrating Megatek's high-performance 3D graphics hardware/software
with X.
Nye, Adrian, "The X Window System Protocol," _U_N_I_X _W_o_r_l_d, vol. 6, no. 9, pp.
105-113, September, 1989. An introduction to the X protocol. This is
a short version of Nye's introduction to Volume 0 of O'Reilly's X
series.
O'Reilly, Tim, "The Toolkits (and Politics) of X Windows," _U_N_I_X _W_o_r_l_d, vol.
6, no. 2, pp. 66-73, February, 1989. An introduction to some of the
popular widget sets available for the X Toolkit.
- 6 -
O'Reilly and Associates, _T_h_e _X _W_i_n_d_o_w _S_y_s_t_e_m _i_n _a _N_u_t_s_h_e_l_l, O'Reilly and
Associates, 1990. ISBN 0-937175-24-2. A quick reference guide to Xlib
and Xt and some associated configuration files. Nice format.
O'Reilly and Associates, _T_h_e _X _W_i_n_d_o_w _S_y_s_t_e_m _S_e_r_i_e_s (_8 _v_o_l_u_m_e_s), O'Reilly
and Associates, 1988, 1989, 1990. ISBN 0-937175-50-1, 0-937175-26-9,
0-937175-27-7, 0-93715-14-5, 0-937175-38-2, 0-937175-33-1, 0-937175-
56-0, 0-937175-57-9, etc. This is a 7 (and growing) volume set of
books. Volumes 0, 2, 3, and 5 are lightly edited versions of the MIT
manuals (protocol manual, Xlib manual pages, popular client manual
pages, and X Toolkit); some include additional tutorial or introducto-
ry chapters. Volume 1 (by Adrian Nye) is a tutorial on Xlib. It's
broader than the Oliver Jones book, but doesn't cover the difficult
real world subjects as well. Volume 4 (by Adrian Nye and Tim O'Reilly)
is a new tutorial on the X Toolkit intrinsics (Xt). Volume 6 (not yet
available) will cover various widget sets, including OSF/Motif, AT&T
Open Look, MIT Athena, etc.). Volume 7 (by Dan Heller) is a tutorial
on XView, a toolkit similar to, but not compatible with, the X Toolk-
it. These books are often not as deep as some of the others, but, un-
like some of the others, they try to cover all of the functionality.
Mostly written/edited by technical writers rather than engineers, they
are probably the most professional looking of the X books. They books
are updated regularly, with the most recent versions of some of them
updated to X11R4.
Open Software Foundation, _O_S_F/_M_o_t_i_f _S_e_r_i_e_s (_5 _v_o_l_u_m_e_s), Prentice Hall,
1990. ISBN 0-13-640491-X, 0-13-640525-8, 0-13-640517-7, 0-13-640509-
6, 0-13-640483-9. The volumes include Motif _S_t_y_l_e _G_u_i_d_e, _P_r_o_g_r_a_m_m_e_r'_s
_G_u_i_d_e, _P_r_o_g_r_a_m_m_e_r'_s _R_e_f_e_r_e_n_c_e, _U_s_e_r'_s _G_u_i_d_e, and _A_p_p_l_i_c_a_t_i_o_n _E_n_v_i_r_o_n_-
_m_e_n_t _S_p_e_c_i_f_i_c_a_t_i_o_n (_A_E_S) _U_s_e_r _E_n_v_i_r_o_n_m_e_n_t _V_o_l_u_m_e. Motif is a user in-
terface programming environment for X. It was designed and developed
by members of the Open Software Foundation, including DEC, HP, and
IBM. These companies have committed to using Motif as their standard
user interface.
Pike, Rob, "Window Systems Should Be Transparent," _U_S_E_N_I_X _C_o_m_p_u_t_i_n_g _S_y_s_-
_t_e_m_s, vol. 1, no. 3, pp. 279-296, Summer, 1988. Some window system
user interface guidelines, based on MUX window system for the BLIT
terminal, with some comparisons to X. Contrast this to Myers' paper.
Pike is the developer of the BLIT.
Pike, Rob, "A Concurrent Window System," _U_S_E_N_I_X _C_o_m_p_u_t_i_n_g _S_y_s_t_e_m_s, vol. 2,
no. 2, pp. 133-153, Spring, 1989. A description of a multi-threaded
window system written using a concurrent programming language. The
design is shown to be simpler than the single threaded design of X.
Probst, Richard, "OPEN LOOK Toolkits," _S_u_n_T_e_c_h_n_o_l_o_g_y, vol. 1, no. 4, pp.
76-86, Autumn, 1988. OPEN LOOK is a user interface specification
designed by AT&T and Sun. This paper discusses OPEN LOOK programming
toolkits, including two for the X Window System.
Rao, R. and S. Wallace, "The X Toolkit," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _S_u_m_m_e_r, _1_9_8_7
_U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e. Describes an early version of the X Toolkit.
- 7 -
Rochkind, Marc J., "XVT: A Virtual Toolkit for Portability Between Window
Systems," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _W_i_n_t_e_r, _1_9_8_9 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp.
151-163. Describes the Extensible Virtual Toolkit (XVT), a user in-
terface toolkit that provides a uniform application programming inter-
face to several different window systems, while providing the ``look
and feel'' appropriate for the window system. Supported window sys-
tems include X11, Microsoft Windows, OS/2 Presentation Manager, and
the Macintosh.
Rosenthal, David S. H., "Window Exchange," _U_N_I_X _R_e_v_i_e_w, vol. 7, no. 12, pp.
58-64. An excellent review of X client interoperability, by the au-
thor of the X11R4 Inter-Client Communication Conventions Manual
(IC3M). It discusses some common programming errors in this area and
how proper programming and attention to the IC3M will make your pro-
grams more robust.
Rosenthal, David S. H., "A Simple X11 Client Program," in _P_r_o_c_e_e_d_i_n_g_s _o_f
_t_h_e _W_i_n_t_e_r, _1_9_8_8 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 229-235. A version of the
``hello, world'' paper, presenting and comparing the basics of the X
library and the X Toolkit. All potential X programmers (Xlib or X
toolkit) should understand everything in this paper before they at-
tempt to write any X programs. Included in the MIT X distribution
(X11R4/doc/tutorials/HelloWorld) and reprinted as ``Going for
Baroque'' in the June or July, 1988 (vol. 6, no. 6) issue of _U_N_I_X _R_e_-
_v_i_e_w magazine.
Rosenthal, David S. H. and Adam R. de Boor, _G_o_d_z_i_l_l_a'_s _G_u_i_d_e _t_o _P_o_r_t_i_n_g _t_h_e
_X _V_1_1 _S_a_m_p_l_e _S_e_r_v_e_r, 1988. A hackers guide to quick-and-dirty porting
of the sample server to memory-mapped monochrome and color frame
buffers. This document is included in the MIT X11R4 distribution.
Rost, Randi, Jeffrey Friedberg, and Peter Nishimoto, "PEX: A Network-
Transparent 3D Graphics System," _I_E_E_E _C_o_m_p_u_t_e_r _G_r_a_p_h_i_c_s & _A_p_p_l_i_c_a_-
_t_i_o_n_s, pp. 14-26, July, 1989. A good overview of PEX, the
PHIGS/PHIGS+ 3D extension to X. A complete PEX is currently being
developed by Sun under contract to the MIT X Consortium and is
scheduled to be publically available in 1990. See also the Thomas &
Friedmann paper on PEX.
Rost, Randi J., _X _a_n_d _M_o_t_i_f _Q_u_i_c_k _R_e_f_e_r_e_n_c_e _G_u_i_d_e, DEC Press, 1990. ISBN
1-55558-052-1. A quick reference guide to Xlib, the X Toolkit, and
Motif. It's a little bulkier than the O'Reilly quick reference, but
the cross referencing is much better.
Ryan, Michael and James VanGilder, "The Development of DECwindows VMS
Mail," _D_i_g_i_t_a_l _T_e_c_h_n_i_c_a_l _J_o_u_r_n_a_l, vol. 2, no. 3, pp. 74-83, Summer,
1990. Describes the engineering and development of a moderate sized X
application.
Salzman, Isaac J., "A Look At Graphical Shells," _U_N_I_X _R_e_v_i_e_w, vol. 8, no.
11, pp. 103-113, November, 1990. A comparison of the two most popular
X-based graphical UNIX shells: Looking Glass (by Visix Software of
Reston, Virginia) and X.desktop (by IXI Ltd., Cambridge, UK).
- 8 -
Schaufler, Robin, "X11/NeWS Design Overview," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _S_u_m_m_e_r,
_1_9_8_8 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 23-35. Discusses Sun's X/NeWS window sys-
tem. Compares the functionality of X and NeWS and describes a server
that merges the two.
Scheifler, Robert and Jim Gettys, "The X Window System," _A_C_M _T_r_a_n_s_a_c_t_i_o_n_s
_o_n _G_r_a_p_h_i_c_s, vol. 5, no. 2, pp. 79-109, April, 1986. The first pub-
lished description of X. Although it discusses X10, it is still one
of the most comprehensive overviews of X. This paper is being updated
to X11 by Jim Gettys, Phil Karlton, and Scott McGregor.
Scheifler, Robert and James Gettys, _X _W_i_n_d_o_w _S_y_s_t_e_m, _S_e_c_o_n_d _E_d_i_t_i_o_n, DEC
Press, 1990. ISBN 1-55558-050-5. The Xlib and X protocol bible by the
authors of X11. The second edition is a superset of the MIT documenta-
tion on X11R4 Xlib, X protocol, XLFD, and ICCCM. This is THE specifi-
cation of the core of X and is required for all serious X programmers,
though it may be rough going for those with little experience in in-
teractive computer graphics. See also Asente & Swick's companion book
on the X Toolkit.
Schmandt, Chris, Mark Ackerman, and Debby Hindus, "Augmenting a Window Sys-
tem with Speech Input," _I_E_E_E _C_o_m_p_u_t_e_r, vol. 23, no. 8, pp. 50-56, Au-
gust, 1990. Describes Xspeak, an experimental speech recognition
client that allows voice access to X windows.
Shein, Barry, "What Light Through Yonder Window Breaks?," _S_u_n _E_x_p_e_r_t, vol.
1, no. 6, pp. 44-51, April, 1990. A review of OpenWindows, Sun's pro-
duct version of X.
Shein, Barry, "Primal Screens," _S_u_n _E_x_p_e_r_t, vol. 1, no. 3, pp. 56-69, Janu-
ary, 1990. An interesting, though somewhat religious, comparison of X
and Sun's NeWS window system. It concludes, "even Scott McNealy has
spoken of NeWS as a failure as a standard, although he hastens to add
that it was a technological success."
Southerton, Alan, "Friendly Desktops," _U_N_I_X _W_o_r_l_d, vol. 6, no. 11, pp. 68-
73, November, 1989. Another comparison of X-based UNIX file managers,
including Non Standard Logic InDepth, IXI X.Desktop, Visix Looking
Glass, AT&T Open Look, Torch Technologies Y-OpenTop, and SoftScience
Convenience Plus.
Southerton, Alan, "Many Paths To X Window Programming," _U_N_I_X _W_o_r_l_d, vol. 7,
no. 5, pp. 66-73, May, 1990. A survey of user interface development
tools for X. It's somewhat superficial, but mentions most of the popu-
lar tools.
Spine, Thomas and Jacob VanNoy, "The Evolution of the X User Interface
Style," _D_i_g_i_t_a_l _T_e_c_h_n_i_c_a_l _J_o_u_r_n_a_l, vol. 2, no. 3, pp. 44-51, Summer,
1990. Describes the design and evolution of the DECwindows look and
feel for the X Window System.
Stroyan, Michael, "Three-Dimensional Graphics Using the X Window System,"
_D_r. _D_o_b_b'_s _J_o_u_r_n_a_l, vol. 15, no. 2, pp. 28-36, February, 1990. A high
level description of various approaches to developing 3D graphics
- 9 -
tools for X, including those of the PHIGS Extension to X (PEX) and
HP's Starbase-on-X11 (sox11).
Sun Microsystems, _O_P_E_N _L_O_O_K _G_r_a_p_h_i_c_a_l _U_s_e_r _I_n_t_e_r_f_a_c_e _S_e_r_i_e_s, Addison-
Wesley, 1990. ISBN 0-201-52365-5, ISBN 0-201-42364-7. This series in-
cludes _F_u_n_c_t_i_o_n_a_l _S_p_e_c_i_f_i_c_a_t_i_o_n_s and _A_p_p_l_i_c_a_t_i_o_n _S_t_y_l_e _G_u_i_d_e. OPEN
LOOK was designed by AT&T and Sun and implementations are available
from both. AT&T's implementation uses the X Toolkit. Sun's implementa-
tion uses XView, a similar, but not compatible, toolkit.
Swick, Ralph R. and Mark S. Ackerman, "The X Toolkit: More Bricks for
Building User Interfaces," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _W_i_n_t_e_r, _1_9_8_8 _U_S_E_N_I_X
_C_o_n_f_e_r_e_n_c_e, pp. 221-233. An introduction to the X Toolkit. Describes
the toolkit architecture and the basic Athena widgets.
Thomas, Spencer W. and Martin Friedmann, "PEX - A 3-D Extension to X Win-
dows," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _W_i_n_t_e_r, _1_9_8_9 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 139-
149. Describes the demonstration implementation of PEX, the
PHIGS/PHIGS+ 3D extension to X. A complete PEX is currently being
developed by Sun under contract to the MIT X Consortium and is
scheduled to be publically available in 1990. See also the Rost, _e_t
_a_l, paper on PEX.
Treggiari, Leo and Michael Collins, "Development of the XUI Toolkit," _D_i_g_i_-
_t_a_l _T_e_c_h_n_i_c_a_l _J_o_u_r_n_a_l, vol. 2, no. 3, pp. 24-33, Summer, 1990. An
overview of the XUI widget set. The Motif widget set uses the same
application programming interface.
Wagner, Mitch, "The Rise of X Terminals," _U_N_I_X _T_o_d_a_y, p. 20+, October 29,
1990. Another look at the X terminal market.
Wood, Patrick, "Introduction to Xlib Programming (2 parts)," _U_N_I_X _W_o_r_l_d,
vol. 6, October-November, 1989. This is a two part tutorial article
on Xlib programming. Not as good as Rosenthal's ``hello, world'' arti-
cle.
X/Open Company, Ltd., _X/_O_p_e_n _P_o_r_t_a_b_i_l_i_t_y _G_u_i_d_e: _W_i_n_d_o_w _M_a_n_a_g_e_m_e_n_t,
Prentice-Hall, 1988. X/Open is an international user group of UNIX
hardware and software developers. It publishes portability guidelines
with the goal that developers that follow these guidelines will be
portable across other hardware and software supporting the guidelines.
The X/Open window management guidelines are based on the X11R3 specif-
ications.
Young, Douglas A., _X _W_i_n_d_o_w _S_y_s_t_e_m: _P_r_o_g_r_a_m_m_i_n_g _a_n_d _A_p_p_l_i_c_a_t_i_o_n_s _W_i_t_h _X_t,
_O_S_F/_M_o_t_i_f _E_d_i_t_i_o_n, Prentice-Hall, 1990. ISBN 0-13-497074-8. A good
tutorial on writing programs using the X Toolkit. Examples use the
Motif widget set and are available in electronic form. Only the C in-
terface to Motif is covered. The UIL interface to Motif is not covered
at all. The sections on subclassing widgets is very basic: see the
Asente & Swick book for better coverage there.
Young, Douglas A., _O_S_F/_M_o_t_i_f _R_e_f_e_r_e_n_c_e _M_a_n_u_a_l, Prentice-Hall, 1990. ISBN
0-13-642786-3. A reference manual for the most popular C languague
- 10 -
Motif and Xt functions. The UIL interface to Motif is not covered at
all.
Young, Douglas A., "Programming with the X Toolkit (3 parts)," _U_N_I_X _W_o_r_l_d,
vol. 7, no. 1-3, January-March, 1990. This three part tutorial arti-
cle is based on Young's books on the X Toolkit.
Ken Lee
DEC Western Software Laboratory, Palo Alto, Calif.
Internet: klee@wsl.dec.com
uucp: uunet!decwrl!klee
klee@wsl.dec.com (Ken Lee) (01/30/91)
This is my latest bibliography of good X Window System technical material. There's alot of other stuff out there, but I think these are the best references. If you know of any other good ones, please let me know. Many people have been asking questions about the bibliography. No, I'm not distributing it in any other format. If your printer can't handle the UNIX- style underlining, run it through the UNIX col filter or the equivalent on your system. Yes, I do accept (and appreciate) review copies of material. Yes, you may put copies of this in your books, but please let me know and include the date and contact info from the header. Updates to this bibliography will be sent to comp.windows.x USENET group and xpert mailing list and placed in: expo.lcs.mit.edu:/contrib/Xbibliography and gatekeeper.dec.com:/archive/pub/X11/contrib/Xbibliography approximately once a month. Please do not ask me for updates other than these. Sorry, I am not able to distribute copies of the material mentioned here. Your librarian or bookstore should be able to help you. Ken ================================ cut here ================================ X TECHNICAL BIBLIOGRAPHY please send updates to: Ken Lee, DEC WSL, 181 Lytton Ave., Palo Alto, CA 94301 Internet: klee@wsl.dec.com, UUCP: uunet!decwrl!klee January 29, 1991 Angebranndt, Susan, Raymond Drewry, Philip Karlton, Todd Newman, Bob Scheifler, and Keith Packard, _D_e_f_i_n_i_t_i_o_n _o_f _t_h_e _P_o_r_t_i_n_g _L_a_y_e_r _f_o_r _t_h_e _X _v_1_1 _S_a_m_p_l_e _S_e_r_v_e_r, 1988-1990. A detailed reference to the modules of the sample server. This is a companion to "Strategies for Porting the X v11 Sample Server" by the same authors. Both are included in the MIT X11R4 distribution. Angebranndt, Susan, Raymond Drewry, Philip Karlton, Todd Newman, Bob Scheifler, and Keith Packard, _S_t_r_a_t_e_g_i_e_s _f_o_r _P_o_r_t_i_n_g _t_h_e _X _v_1_1 _S_a_m_p_l_e _S_e_r_v_e_r, 1988-1990. A guide to strategies for porting the sample server. This is a companion to "Definition of the Porting Layer for the X v11 Sample Server" by the same authors. Both are included in the MIT X11R4 distribution. Angebranndt, Susan and Todd Newman, "The Sample X11 Server Architecture," _D_i_g_i_t_a_l _T_e_c_h_n_i_c_a_l _J_o_u_r_n_a_l, vol. 2, no. 3, pp. 16-23, Summer, 1990. An overview of the sample server, including goals, problem areas, modules, and porting guidelines. Asente, Paul, "Simplicity and Productivity," _U_N_I_X _R_e_v_i_e_w, vol. 6, no. 9, pp. 57-63. A discussion on the classing mechanism in the X Toolkit. Asente, Paul J. and Ralph R. Swick, _X _W_i_n_d_o_w _S_y_s_t_e_m _T_o_o_l_k_i_t, DEC Press, 1990. ISBN 1-55558-051-3. The X Toolkit bible, a companion to Sheifler & Gettys book on Xlib and the X protocol. It includes both a tutorial on programming with the X Toolkit and a formal specification of the toolkit. The tutorial, which covers both using and writing widgets, is comprehensive and excelent. The specification is an enhancement of the MIT Xt intrinsics manual, by the same authors. Barkakati, Nabajyoti, _X _W_i_n_d_o_w _S_y_s_t_e_m _P_r_o_g_r_a_m_m_i_n_g, SAMS, 1991. ISBN 0- 672-22750-9. Another tutorial on Xlib programming. There's a short section at the end on mixing Xlib with the X Toolkit, but the program- ming style used there is poor. Bass, Len, Erik Hardy, Reed Little, and Robert Seacord, "Serpent Overview," CMU/SEI-89-UG-2, Software Engineering Institute, Carnegie Mellon University, Pittsburgh, PA.. An overview and tutorial of the Serpent User Interface Management System. Serpent is a UIMS implemented on top of several X toolkits. This paper, as well as the Serpent source code, is included in the MIT X11R4 distribution. Borenstein, Nathaniel S., _M_u_l_t_i_m_e_d_i_a _A_p_p_l_i_c_a_t_i_o_n_s _D_e_v_e_l_o_p_m_e_n_t _w_i_t_h _t_h_e _A_n_- _d_r_e_w _T_o_o_l_k_i_t, Prentice Hall, 1990. ISBN 0-13-036633-1. A tutorial and reference manual for the Andrew toolkit. Andrew is an applications toolkit implemented on several window systems, including X. It is in- - 2 - cluded in the MIT X distribution. Bourne, Philip E. and Lawrence S. Shapiro, "Developing with DECwindows," _D_E_C _P_r_o_f_e_s_s_i_o_n_a_l, vol. 9, no. 2, pp. 36-44, February, 1990. A description of DECwindows programming, focusing the User Interface Language (UIL). UIL is used by both DECwindows and OSF/Motif. Brunet, James, "Using PC's at X Servers," _U_N_I_X _W_o_r_l_d, _N_e_t_w_o_r_k_i_n_g _S_u_p_p_l_e_- _m_e_n_t, pp. 83-85, 1989. An introduction to X server software for IBM PC's. Brunhoff, Todd, "Pleasing The Eye," _U_N_I_X _R_e_v_i_e_w, vol. 7, no. 10, pp. 64-72. An introduction to VEX, a proposed (and since withdrawn) video exten- sions to X. Champine, George, Bob Scheifler, Jim Gettys, Georges Grinstein, and Bertram Herzog, "Panel discussion on the X Window System," in _S_I_G_G_R_A_P_H'_8_8 _P_a_n_e_l _P_r_o_c_e_e_d_i_n_g_s, August, 1988. This is the transcript of an in- teresting panel discussion on X. George Champine was moderator. Panel- ists were Bob Scheifler, Jim Gettys, Georges Grinstein, and Bertram Herzog. The panelists discussed the history of X and current work at/on the X Consortium, PEX, and national and international standards for X. This was followed by a lively question and answer session on the present and future of X. Clifford, William, John McConnell, and Jeffrey Friedberg, "The Development of PEX, A Three-dimensional Graphics Extension to X11," in _P_r_o_c_e_e_d_i_n_g_s _o_f _E_u_r_o_g_r_a_p_h_i_c_s'_8_8, September, 1988. An overview PEX, an extension to the X protocol to support PHIGS+. Dolan, Michael A. and Larry Hare, "X Window System Servers in Embedded Sys- tems," in _P_r_o_c_e_e_d_i_n_g_s _o_f _C_O_M_P_C_O_N _S_p_r_i_n_g _1_9_9_0, pp. 314-319, February, 1990. A discussion of X server architectures for embedded systems, such as accelerator boards and standalone terminals. Epstein, Jeremy and Marvin Shugerman, "A Trusted X Window System Server for Trusted Mach," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _F_i_r_s_t _U_S_E_N_I_X _M_a_c_h _W_o_r_k_s_h_o_p, Oc- tober, 1990. Describes the prototype of a B3-level Trusted X. Flowers, Ken, "Using Motif's User Interface Language," _U_N_I_X _W_o_r_l_d, vol. 7, no. 12, pp. 119-131, December, 1990. A tutorial the Motif User Inter- face Language (UIL). UIL is a meta-language for specifying Motif widg- et resources and heirarchies. It allows much of a program's user in- terface to be developed independently of the rest of the program's functionality. Flowers, Ken, "Programming with the Motif Toolkit," _U_N_I_X _W_o_r_l_d, vol. 7, no. 11, pp. 135-144, November, 1990. A tutorial on X Toolkit programming using the Motif widget set. The article focuses on the various Motif widgets, assuming that the reader understands the basics of using the X Toolkit Only the C interface is covered. A future article will cover the UIL interface. - 3 - Gettys, Jim, "Problems Implementing Window Systems in UNIX," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _W_i_n_t_e_r, _1_9_8_6 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 89-97. Describes some of the early work on X, especially technical issues in implementing server-based window systems on UNIX systems. Gettys, Jim, "Network Windowing using the X Window System," _D_r. _D_o_b_b'_s _J_o_u_r_n_a_l, pp. 42-53, March, 1989. A discussion on the importance of networking for window systems. Good, Michael, "User Interface Consistency in the DECwindows Program," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _H_u_m_a_n _F_a_c_t_o_r_s _S_o_c_i_e_t_y, _V_o_l. _1, 1988. A discussion of user interface design techniques used in developing the DECwindows toolkit. Greenwood, Stephen, "The DECwindows User Interface Language," _D_i_g_i_t_a_l _T_e_c_h_n_i_c_a_l _J_o_u_r_n_a_l, vol. 2, no. 3, pp. 34-43, Summer, 1990. An over- view of the DECwindows user interface language (UIL). UIL allows pro- grammers to specify and configure the X Toolkit widget hierarchy at run-time. This is very useful for rapid prototyping and international- ization. UIL is used by both DECwindows and Motif. Hayes, Frank, "X Terminals vs. Diskless Workstations," _U_N_I_X _W_o_r_l_d, vol. 7, no. 10, pp. 83-86, October, 1990. A look at some of the tradeoffs between using X terminals and diskless workstations. Heller, Dan, "The XView Toolkit (2 parts)," _U_N_I_X _W_o_r_l_d, vol. 7, no. 6-7, June-July, 1990. A two part tutorial on XView, based on Volume 7 of the O'Reilly series. XView, from Sun, is a user interface toolkit for X. It is similar to, but not compatible with (at either the end-user or the programmer levels), MIT's X Toolkit. It supports Open Look, but not Motif. Hopgood, F. R. A., _M_e_t_h_o_d_o_l_o_g_y _o_f _W_i_n_d_o_w _M_a_n_a_g_e_m_e_n_t, Springer-Verlag, New York, 1986. ISBN 0-387-16116-3. The proceedings of the important 1985 Alvey Workshop on Window Management. It includes interesting ma- terial on problems with UNIX window systems and proposed solutions. It also includes descriptions of early versions of current UNIX window systems, such as X and Sun's NeWS. Johnson, Eric and Kevin Reichard, _X _W_i_n_d_o_w _A_p_p_l_i_c_a_t_i_o_n_s _P_r_o_g_r_a_m_m_i_n_g, MIS: Press, 1989. ISBN 1-55828-016-2. Another tutorial on Xlib program- ming. This book has lots and lots of examples, but coverage of complex subjects is not as deep as Jones' book or as broad as the O'Reilly Xlib tutorial. Unfortunately, many of the example programs are not well behaved, so be careful. Johnson, Eric and Kevin Reichard, _A_d_v_a_n_c_e_d _X _W_i_n_d_o_w _A_p_p_l_i_c_a_t_i_o_n_s _P_r_o_g_r_a_m_- _m_i_n_g, MIS: Press, 1990 An "advanced" version of the authors' previous book. Only Xlib programming is convered. The X11R4 ICCCM section is good, but, aside from that, this isn't much advanced over Oliver Jones book.. ISBN 1-55828-016-2. Jones, Oliver, _I_n_t_r_o_d_u_c_t_i_o_n _t_o _t_h_e _X _W_i_n_d_o_w _S_y_s_t_e_m, Prentice-Hall, 1988, 1989. ISBN 0-13-499997-5. An excellent introduction to programming - 4 - with Xlib. Written with the programmer in mind, this book includes many practical tips that are not found anywhere else. This book is not as broad as the O'Reilly Xlib tutorial and doesn't offer as many exam- ples as the Johnson & Reichard book, but Jones is probably the most experienced X programmer of this group and this shows in the quality and depth of the material in the book. Originally written for X11R1, recent printings have included corrections and additions. The sixth printing should have X11R4 material. Keller, Brian J., _A _P_r_a_c_t_i_c_a_l _G_u_i_d_e _t_o _X _W_i_n_d_o_w _P_r_o_g_r_a_m_m_i_n_g, CRC Press, 1990. ISBN 0-8493-7406-5. Another tutorial on X application writing. This one is uses the X Toolkit and Motif. Kent, Christopher, "XDPS: A Display PostScript System Extension for DECwindows," _D_i_g_i_t_a_l _T_e_c_h_n_i_c_a_l _J_o_u_r_n_a_l, vol. 2, no. 3, pp. 64-73, Sum- mer, 1990. An overview of Display PostScript, an extension to the X protocol allowing PostScript graphics in X windows. Leffler, Samuel J., "A Window On The Future?," _U_N_I_X _R_e_v_i_e_w, vol. 6, no. 6, pp. 62-69. This article compares Sun's NeWS with other window sys- tems, such as X, and concludes that, despite its problems, NeWS is the window system of the future. See Robin Schaufler's paper for a more technical comparison of the X and NeWS. Lemke, David and David S. H. Rosenthal, "Visualizing X11 Clients," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _W_i_n_t_e_r, _1_9_8_9 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 125-138. A tu- torial on ``visuals'', the X abstraction of display hardware capabili- ties. Proper use of visuals is necessary for an X client to take ad- vantage of the capabilities of a server's hardware. Included in the MIT X distribution (X11R4/doc/tutorials/visuals). Lemon, Bob, "X Terminals Put to the Test," _U_N_I_X _W_o_r_l_d, vol. 7, no. 10, pp. 106-114, October, 1990. Another look at the X terminal market. Levitt, Jason, "XVT: Safe Haven In The GUI Wars," _U_N_I_X _T_o_d_a_y, p. 56+, Oc- tober 29, 1990. A review of XVT, a software package that claims to provide a common API for developing user interfaces for Motif, Macin- tosh, Microsoft Windows, Presentation Manager, and dumb character terminals. See also Marc Rochkind's USENIX paper. Linton, Mark A., John M. Vlissides, and Paul R. Calder, "Composing User In- terfaces with InterViews," _I_E_E_E _C_o_m_p_u_t_e_r, vol. 22, no. 2, pp. 8-22, February, 1989. Describes the InterViews user interface toolkit, written in C++ and based on the X Window System. Even if you don't plan to use InterViews as a toolkit, it provides a good C++ binding to the X protocol. Macklem, Rick, Jim Linders, and Hugh Smith, "G Shell Environment," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _S_u_m_m_e_r, _1_9_8_8 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 15-22. Describes a rudimentary graphical UNIX shell written as a X client. Mansfield, Niall, _T_h_e _X _W_i_n_d_o_w _S_y_s_t_e_m: _A _U_s_e_r'_s _G_u_i_d_e, Addison-Wesley, Am- sterdam, 1989. ISBN 0-201-51341-2. A tutorial on X for end-users, not programmers. The first edition of this book, based on X11R3, is - 5 - available only in Europe. The second edition, based on X11R4, should be available in both Europe and the U.S. in the Spring of 1991. McCormack, Joel and Paul Asente, "Using the X Toolkit or How to Write a Widget," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _S_u_m_m_e_r, _1_9_8_8 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 1- 13. An excellent tutorial on writing basic X Toolkit widgets. Poten- tial widget writers (and maybe users, too) should probably start by reading this paper. Unfortunately, it's based on X11R2, so some of it is out of date. McCormack, Joel and Paul Asente, "An Overview of the X Toolkit," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _A_C_M _S_I_G_G_R_A_P_H _S_y_m_p_o_s_i_u_m _o_n _U_s_e_r _I_n_t_e_r_f_a_c_e _S_o_f_t_w_a_r_e, pp. 46-55, October, 1988. An excellent architectural overview of the X Toolkit, including its goals, how it accomplished them, and possible future directions. McCormack, Joel, "Smart Code, Stupid Memory: A Fast X Server for a Dumb Color Frame Buffer," DEC Western Research Laboratory Technical Note 9, September, 1989. Describes the implementation of one of the best X servers currently available, that of the color DECstation 3100. Algo- rithms as well as performance measurements are discussed. For informa- tion on obtaining free copies of this report, send electronic mail to ``wrl-techreports@decwrl.dec.com''. Your message should contain the single word ``help''. McGregor, Scott, "An Overview of the DECwindows Architecture," _D_i_g_i_t_a_l _T_e_c_h_n_i_c_a_l _J_o_u_r_n_a_l, vol. 2, no. 3, pp. 9-15, Summer, 1990. An overview of DECwindows, a superset of X for DEC workstations. McLoughlin, Lee, "A Simple Guide to Porting the X Window System," in _P_r_o_c_e_e_d_i_n_g_s _o_f _E_U_U_G _S_p_r_i_n_g _1_9_8_9, pp. 283-291, Brussels, April 3-7, 1989. A brief, but good, discussion of the interface between the X server and the underlying operating system. The EUUG conference is sponsored by the European Unix Users' Group. Mehta, Sunil, "User Interfaces and the IEEE P1201 Committee," _U_N_I_X _R_e_v_i_e_w, vol. 8, no. 1, pp. 14-20. A review of the activities of the IEEE P1201 standards committee, by its chairman. P1201 is trying to develop international standards for the the X Window System client side (Xlib and above). Lower levels of X (servers and protocol) are being stand- ardized by ANSI Task Group X3H3.6. Mikes, Steven, _X _W_i_n_d_o_w _S_y_s_t_e_m _T_e_c_h_n_i_c_a_l _R_e_f_e_r_e_n_c_e, Addison-Wesley, 1990. ISBN 0-201-52370-1. A quick reference manual for X11R3, including Xlib, Xt, fonts, bitmaps, keysyms, Motif, and OPEN LOOK. Mikes, Steven, "3 X Window Servers For DOS," _U_N_I_X _W_o_r_l_d, vol. 7, no. 11, pp. 113-118, November, 1990. A review of three of the more popular X servers for IBM PCs: PC-Xview, PC-Xsight, and XVision. None of these products allows you to run X clients on the PC, though Xvision does allow you to simultaneously display remote X clients and local Micro- soft Windows clients. - 6 - Miller, John David, _A_n _O_P_E_N _L_O_O_K _a_t _U_N_I_X: _A _D_e_v_e_l_o_p_e_r'_s _G_u_i_d_e _t_o _X, M&T Books, 1990. ISBN 1-55-851057-5 A tutorial on the Open Look widget set from AT&T. Contact M&T Books at 1-800-533-4372. Mirchandani, Dinesh and Prabuddha Biswas, "Ethernet Performance of Remote DECwindows Applications," _D_i_g_i_t_a_l _T_e_c_h_n_i_c_a_l _J_o_u_r_n_a_l, vol. 2, no. 3, pp. 84-94, Summer, 1990. Describes a methodology for analyzing the performance of networked X applications. Myers, Brad A., "Window Interfaces: A Taxonomy of Window Manager User In- terfaces," _I_E_E_E _C_o_m_p_u_t_e_r _G_r_a_p_h_i_c_s & _A_p_p_l_i_c_a_t_i_o_n_s, vol. 8, no. 5, pp. 65-84, September, 1988. A taxonomy of current window system user in- terfaces, including the UWM window manager for X. Discusses and com- pares the features of each user interface. Contrast this with Rob Pike's window system user interface guidelines. Myers is a well known user interface researcher. Nadeau, David R., "High-Performance 3-D Graphics In A Window Environment," _C_o_m_p_u_t_e_r _T_e_c_h_n_o_l_o_g_y _R_e_v_i_e_w, pp. 89-93, Fall, 1988. A discussion on integrating Megatek's high-performance 3D graphics hardware/software with X. Nye, Adrian, "The X Window System Protocol," _U_N_I_X _W_o_r_l_d, vol. 6, no. 9, pp. 105-113, September, 1989. An introduction to the X protocol. This is a short version of Nye's introduction to Volume 0 of O'Reilly's X series. O'Reilly, Tim, "The Toolkits (and Politics) of X Windows," _U_N_I_X _W_o_r_l_d, vol. 6, no. 2, pp. 66-73, February, 1989. An introduction to some of the popular widget sets available for the X Toolkit. O'Reilly and Associates, _T_h_e _X _W_i_n_d_o_w _S_y_s_t_e_m _i_n _a _N_u_t_s_h_e_l_l, O'Reilly and Associates, 1990. ISBN 0-937175-24-2. A quick reference guide to Xlib and Xt and some associated configuration files. It leaves out alot of material in order to acheive a small, convenient size. O'Reilly and Associates, _T_h_e _X _W_i_n_d_o_w _S_y_s_t_e_m _S_e_r_i_e_s (_8 _v_o_l_u_m_e_s), O'Reilly and Associates, 1988, 1989, 1990. O'Reilly publishes a large collec- tion of X books. Volumes 0, 2, 3, and 5 are lightly edited versions of the MIT manuals (protocol manual, Xlib manual pages, popular client manual pages, and X Toolkit); some include additional tutorial or in- troductory chapters. Volume 1 (by Adrian Nye) is a tutorial on Xlib. It's broader than the Oliver Jones book, but doesn't cover the practi- cal material as well. Volume 4 (by Adrian Nye and Tim O'Reilly) is a tutorial on the X Toolkit intrinsics (Xt). It's generally inferior to the Asente & Swick book, especially in the sections on subclassing widgets. Volume 6 (not yet available) will cover various widget sets, including OSF/Motif, AT&T Open Look, MIT Athena, etc.). Volume 7 (by Dan Heller) is a tutorial on XView, a toolkit similar to, but not com- patible with, the X Toolkit. Unlike many of the other books, they these to cover all the interfaces, but generally do not discuss style or architecture issues. Mostly written/edited by technical writers rather than engineers, they are probably the most professional looking of the X books. They books are updated regularly, with the most recent - 7 - versions of some of them updated to X11R4. Some of the books include Motif examples, but the Motif-specific material is not very detailed. Open Software Foundation, _O_S_F/_M_o_t_i_f _S_e_r_i_e_s (_5 _v_o_l_u_m_e_s), Prentice Hall The volumes include Motif _S_t_y_l_e _G_u_i_d_e, _P_r_o_g_r_a_m_m_e_r'_s _G_u_i_d_e, _P_r_o_g_r_a_m_m_e_r'_s _R_e_f_e_r_e_n_c_e, _U_s_e_r'_s _G_u_i_d_e, and _A_p_p_l_i_c_a_t_i_o_n _E_n_v_i_r_o_n_m_e_n_t _S_p_e_c_i_f_i_c_a_t_i_o_n (_A_E_S) _U_s_e_r _E_n_v_i_r_o_n_m_e_n_t _V_o_l_u_m_e. Motif is a user interface programming environment for X. It was designed and developed by members of the Open Software Foundation, including DEC, HP, and IBM. These companies have committed to using Motif as their standard user interface. There are two editions of these books, one for releae 1.0 and one for release 1.1. Motif 1.1 is based on X11R4., 1990. Pike, Rob, "Window Systems Should Be Transparent," _U_S_E_N_I_X _C_o_m_p_u_t_i_n_g _S_y_s_- _t_e_m_s, vol. 1, no. 3, pp. 279-296, Summer, 1988. Some window system user interface guidelines, based on MUX window system for the BLIT terminal, with some comparisons to X. Contrast this to Myers' paper. Pike is the developer of the BLIT. Pike, Rob, "A Concurrent Window System," _U_S_E_N_I_X _C_o_m_p_u_t_i_n_g _S_y_s_t_e_m_s, vol. 2, no. 2, pp. 133-153, Spring, 1989. A description of a multi-threaded window system written using a concurrent programming language. The design is shown to be simpler than the single threaded design of X. Probst, Richard, "OPEN LOOK Toolkits," _S_u_n_T_e_c_h_n_o_l_o_g_y, vol. 1, no. 4, pp. 76-86, Autumn, 1988. OPEN LOOK is a user interface specification designed by AT&T and Sun. This paper discusses OPEN LOOK programming toolkits, including two for the X Window System. Rao, R. and S. Wallace, "The X Toolkit," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _S_u_m_m_e_r, _1_9_8_7 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e. Describes an early version of the X Toolkit. Rochkind, Marc J., "XVT: A Virtual Toolkit for Portability Between Window Systems," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _W_i_n_t_e_r, _1_9_8_9 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 151-163. Describes the Extensible Virtual Toolkit (XVT), a user in- terface toolkit that provides a uniform application programming inter- face to several different window systems, while providing the ``look and feel'' appropriate for the window system. Supported window sys- tems include X11, Microsoft Windows, OS/2 Presentation Manager, and the Macintosh. Rosenthal, David S. H., "Window Exchange," _U_N_I_X _R_e_v_i_e_w, vol. 7, no. 12, pp. 58-64. An excellent review of X client interoperability problems, by the author of the X Inter-Client Communication Conventions Manual (IC3M). About half the paper discusses differences among servers that an application writer must understand. The other half discusses (IC3M) issues such as selections and dealing with the window manager. Rosenthal, David S. H., "A Simple X11 Client Program," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _W_i_n_t_e_r, _1_9_8_8 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 229-235. A version of the ``hello, world'' paper, presenting and comparing the basics of the X library and the X Toolkit. All potential X programmers (Xlib or X toolkit) should understand everything in this paper before they at- tempt to write any X programs. Included in the MIT X distribution - 8 - (X11R4/doc/tutorials/HelloWorld) and reprinted as ``Going for Baroque'' in the June or July, 1988 (vol. 6, no. 6) issue of _U_N_I_X _R_e_- _v_i_e_w magazine. Rosenthal, David S. H. and Adam R. de Boor, _G_o_d_z_i_l_l_a'_s _G_u_i_d_e _t_o _P_o_r_t_i_n_g _t_h_e _X _V_1_1 _S_a_m_p_l_e _S_e_r_v_e_r, 1988. A hackers guide to quick-and-dirty porting of the sample server to memory-mapped monochrome and color frame buffers. This document is included in the MIT X11R4 distribution. Rost, Randi, Jeffrey Friedberg, and Peter Nishimoto, "PEX: A Network- Transparent 3D Graphics System," _I_E_E_E _C_o_m_p_u_t_e_r _G_r_a_p_h_i_c_s & _A_p_p_l_i_c_a_- _t_i_o_n_s, pp. 14-26, July, 1989. A good overview of PEX, the PHIGS/PHIGS+ 3D extension to X. A complete PEX is currently being developed by Sun under contract to the MIT X Consortium and is scheduled to be publically available in 1990. See also the Thomas & Friedmann paper on PEX. Rost, Randi J., _X _a_n_d _M_o_t_i_f _Q_u_i_c_k _R_e_f_e_r_e_n_c_e _G_u_i_d_e, DEC Press, 1990. ISBN 1-55558-052-1. A quick reference guide to Xlib, the X Toolkit, and Motif. It's a little bulkier than the O'Reilly quick reference, but the cross referencing is much better. Ryan, Michael and James VanGilder, "The Development of DECwindows VMS Mail," _D_i_g_i_t_a_l _T_e_c_h_n_i_c_a_l _J_o_u_r_n_a_l, vol. 2, no. 3, pp. 74-83, Summer, 1990. Describes the engineering and development of a moderate sized X application. Salzman, Isaac J., "A Look At Graphical Shells," _U_N_I_X _R_e_v_i_e_w, vol. 8, no. 11, pp. 103-113, November, 1990. A comparison of the two most popular X-based graphical UNIX shells: Looking Glass (by Visix Software of Reston, Virginia) and X.desktop (by IXI Ltd., Cambridge, UK). Schaufler, Robin, "X11/NeWS Design Overview," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _S_u_m_m_e_r, _1_9_8_8 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 23-35. Discusses Sun's X/NeWS window sys- tem. Compares the functionality of X and NeWS and describes a server that merges the two. Scheifler, Robert and Jim Gettys, "The X Window System," _A_C_M _T_r_a_n_s_a_c_t_i_o_n_s _o_n _G_r_a_p_h_i_c_s, vol. 5, no. 2, pp. 79-109, April, 1986. The first pub- lished description of X. Although it discusses X10, it is still one of the most comprehensive overviews of X. This paper is being updated to X11 by Jim Gettys, Phil Karlton, and Scott McGregor. Scheifler, Robert and James Gettys, _X _W_i_n_d_o_w _S_y_s_t_e_m, _S_e_c_o_n_d _E_d_i_t_i_o_n, DEC Press, 1990. ISBN 1-55558-050-5. The Xlib and X protocol bible by the authors of X11. The second edition is a superset of the MIT documenta- tion on X11R4 Xlib, X protocol, XLFD, and ICCCM. This is THE specifi- cation of the core of X and is required for all serious X programmers, though it may be rough going for those with little experience in in- teractive computer graphics. See also Asente & Swick's companion book on the X Toolkit. Schmandt, Chris, Mark Ackerman, and Debby Hindus, "Augmenting a Window Sys- tem with Speech Input," _I_E_E_E _C_o_m_p_u_t_e_r, vol. 23, no. 8, pp. 50-56, Au- - 9 - gust, 1990. Describes Xspeak, an experimental speech recognition client that allows voice access to X windows. Shein, Barry, "What Light Through Yonder Window Breaks?," _S_u_n _E_x_p_e_r_t, vol. 1, no. 6, pp. 44-51, April, 1990. A review of OpenWindows, Sun's pro- duct version of X. Shein, Barry, "Primal Screens," _S_u_n _E_x_p_e_r_t, vol. 1, no. 3, pp. 56-69, Janu- ary, 1990. An interesting, though somewhat religious, comparison of X and Sun's NeWS window system. It concludes, "even Scott McNealy has spoken of NeWS as a failure as a standard, although he hastens to add that it was a technological success." Southerton, Alan, "Many Paths To X Window Programming," _U_N_I_X _W_o_r_l_d, vol. 7, no. 5, pp. 66-73, May, 1990. A survey of user interface development tools for X. It's somewhat superficial, but mentions most of the popu- lar tools. Spine, Thomas and Jacob VanNoy, "The Evolution of the X User Interface Style," _D_i_g_i_t_a_l _T_e_c_h_n_i_c_a_l _J_o_u_r_n_a_l, vol. 2, no. 3, pp. 44-51, Summer, 1990. Describes the design and evolution of the DECwindows look and feel for the X Window System. Stroyan, Michael, "Three-Dimensional Graphics Using the X Window System," _D_r. _D_o_b_b'_s _J_o_u_r_n_a_l, vol. 15, no. 2, pp. 28-36, February, 1990. A high level description of various approaches to developing 3D graphics tools for X, including those of the PHIGS Extension to X (PEX) and HP's Starbase-on-X11 (sox11). Sung, Hsien Ching Kelvin, Greg Rogers, and William Kubitz, "A Critical Evaluation of PEX," _I_E_E_E _C_o_m_p_u_t_e_r _G_r_a_p_h_i_c_s & _A_p_p_l_i_c_a_t_i_o_n_s, vol. 10, no. 6, pp. 65-75, November, 1990. An evaluation of PEX, the X exten- sion to support PHIGS, from the point of view of a PHIGS implementor. Sun Microsystems, _O_P_E_N _L_O_O_K _G_r_a_p_h_i_c_a_l _U_s_e_r _I_n_t_e_r_f_a_c_e _S_e_r_i_e_s, Addison- Wesley, 1990. ISBN 0-201-52365-5, ISBN 0-201-42364-7. This series in- cludes _F_u_n_c_t_i_o_n_a_l _S_p_e_c_i_f_i_c_a_t_i_o_n_s and _A_p_p_l_i_c_a_t_i_o_n _S_t_y_l_e _G_u_i_d_e. OPEN LOOK was designed by AT&T and Sun and implementations are available from both. AT&T's implementation uses the X Toolkit. Sun's implementa- tion uses XView, a similar, but not compatible, toolkit. Swick, Ralph R. and Mark S. Ackerman, "The X Toolkit: More Bricks for Building User Interfaces," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _W_i_n_t_e_r, _1_9_8_8 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 221-233. An introduction to the X Toolkit. Describes the toolkit architecture and the basic Athena widgets. Thomas, Spencer W. and Martin Friedmann, "PEX - A 3-D Extension to X Win- dows," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _W_i_n_t_e_r, _1_9_8_9 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 139- 149. Describes the demonstration implementation of PEX, the PHIGS/PHIGS+ 3D extension to X. A complete PEX is currently being developed by Sun under contract to the MIT X Consortium and is scheduled to be publically available in 1990. See also the Rost, _e_t _a_l, paper on PEX. - 10 - Treggiari, Leo and Michael Collins, "Development of the XUI Toolkit," _D_i_g_i_- _t_a_l _T_e_c_h_n_i_c_a_l _J_o_u_r_n_a_l, vol. 2, no. 3, pp. 24-33, Summer, 1990. An overview of the XUI widget set. The Motif widget set uses the same application programming interface. Wagner, Mitch, "The Rise of X Terminals," _U_N_I_X _T_o_d_a_y, p. 20+, October 29, 1990. Another look at the X terminal market. Wood, Patrick, "Introduction to Xlib Programming (2 parts)," _U_N_I_X _W_o_r_l_d, vol. 6, October-November, 1989. This is a two part tutorial article on Xlib programming. Not as good as Rosenthal's ``hello, world'' arti- cle. X/Open Company, Ltd., _X/_O_p_e_n _P_o_r_t_a_b_i_l_i_t_y _G_u_i_d_e: _W_i_n_d_o_w _M_a_n_a_g_e_m_e_n_t, Prentice-Hall, 1988. X/Open is an international user group of UNIX hardware and software developers. It publishes portability guidelines with the goal that developers that follow these guidelines will be portable across other hardware and software supporting the guidelines. The X/Open window management guidelines are based on the X11R3 specif- ications. Young, Douglas A., _X _W_i_n_d_o_w _S_y_s_t_e_m: _P_r_o_g_r_a_m_m_i_n_g _a_n_d _A_p_p_l_i_c_a_t_i_o_n_s _W_i_t_h _X_t, _O_S_F/_M_o_t_i_f _E_d_i_t_i_o_n, Prentice-Hall, 1990. ISBN 0-13-497074-8. A basic tutorial on writing programs using the X11R3 X Toolkit and Motif 1.0. Examples use the Motif widget set and are available in electronic form. The Motif coverage is not complete, however, and the UIL inter- face to Motif is not covered at all. There are section on subclassing widgets is weak. See the Asente & Swick book for better coverage there. Young, Douglas A., _O_S_F/_M_o_t_i_f _R_e_f_e_r_e_n_c_e _M_a_n_u_a_l, Prentice-Hall, 1990. ISBN 0-13-642786-3. A reference manual for the most popular C languague Motif and Xt functions. The UIL interface to Motif is not covered at all. Young, Douglas A., "Programming with the X Toolkit (3 parts)," _U_N_I_X _W_o_r_l_d, vol. 7, no. 1-3, January-March, 1990. This three part tutorial arti- cle is based on Young's books on the X Toolkit. -- Ken Lee DEC Western Software Laboratory, Palo Alto, Calif. Internet: klee@wsl.dec.com uucp: uunet!decwrl!klee
klee@decwrl.dec.com (Ken Lee) (03/01/91)
>from: klee@wsl.dec.com (Ken Lee)
This is my latest bibliography of good X Window System technical material.
There's alot of other stuff out there, but I think these are the best
references. If you know of any other good ones, please let me know.
Many people have been asking questions about the bibliography. No, I'm not
distributing it in any other format. If your printer can't handle the UNIX-
style underlining, run it through the UNIX col filter or the equivalent on your
system. Yes, I do accept (and appreciate) review copies of material. Yes, you
may put copies of this in your books, but please let me know and include the
date and contact info from the header. Updates to this bibliography will be
sent to comp.windows.x USENET group and xpert mailing list and placed in:
expo.lcs.mit.edu:/contrib/Xbibliography and
gatekeeper.dec.com:/archive/pub/X11/contrib/Xbibliography
approximately once a month. Please do not ask me for updates other than these.
Sorry, I am not able to distribute copies of the material mentioned here. Your
librarian or bookstore should be able to help you.
Ken
================================ cut here ================================
X TECHNICAL BIBLIOGRAPHY
please send updates to:
Ken Lee, DEC WSL, 181 Lytton Ave., Palo Alto, CA 94301
Internet: klee@wsl.dec.com, UUCP: uunet!decwrl!klee
February 28, 1991
Angebranndt, Susan, Raymond Drewry, Philip Karlton, Todd Newman, Bob
Scheifler, and Keith Packard, _D_e_f_i_n_i_t_i_o_n _o_f _t_h_e _P_o_r_t_i_n_g _L_a_y_e_r _f_o_r _t_h_e
_X _v_1_1 _S_a_m_p_l_e _S_e_r_v_e_r, 1988-1990. A detailed reference to the modules
of the sample server. This is a companion to "Strategies for Porting
the X v11 Sample Server" by the same authors. Both are included in the
MIT X11R4 distribution.
Angebranndt, Susan, Raymond Drewry, Philip Karlton, Todd Newman, Bob
Scheifler, and Keith Packard, _S_t_r_a_t_e_g_i_e_s _f_o_r _P_o_r_t_i_n_g _t_h_e _X _v_1_1 _S_a_m_p_l_e
_S_e_r_v_e_r, 1988-1990. A guide to strategies for porting the sample
server. This is a companion to "Definition of the Porting Layer for
the X v11 Sample Server" by the same authors. Both are included in
the MIT X11R4 distribution.
Angebranndt, Susan and Todd Newman, "The Sample X11 Server Architecture,"
_D_i_g_i_t_a_l _T_e_c_h_n_i_c_a_l _J_o_u_r_n_a_l, vol. 2, no. 3, pp. 16-23, Summer, 1990. An
overview of the sample server, including goals, problem areas,
modules, and porting guidelines.
Asente, Paul, "Simplicity and Productivity," _U_N_I_X _R_e_v_i_e_w, vol. 6, no. 9,
pp. 57-63. A discussion on the classing mechanism in the X Toolkit.
Asente, Paul J. and Ralph R. Swick, _X _W_i_n_d_o_w _S_y_s_t_e_m _T_o_o_l_k_i_t, DEC Press,
1990. ISBN 1-55558-051-3. The X Toolkit bible, a companion to
Sheifler & Gettys book on Xlib and the X protocol. It includes both a
tutorial on programming with the X Toolkit and a formal specification
of the toolkit. The tutorial, which covers both using and writing
widgets, is comprehensive and excelent. The specification is an
enhancement of the MIT Xt intrinsics manual, by the same authors.
Barkakati, Nabajyoti, _X _W_i_n_d_o_w _S_y_s_t_e_m _P_r_o_g_r_a_m_m_i_n_g, SAMS, 1991. ISBN 0-
672-22750-9. Another tutorial on Xlib programming. There's a short
section at the end on mixing Xlib with the X Toolkit, but the program-
ming style used there is poor.
Bass, Len, Erik Hardy, Reed Little, and Robert Seacord, "Serpent Overview,"
CMU/SEI-89-UG-2, Software Engineering Institute, Carnegie Mellon
University, Pittsburgh, PA.. An overview and tutorial of the Serpent
User Interface Management System. Serpent is a UIMS implemented on
top of several X toolkits. This paper, as well as the Serpent source
code, is included in the MIT X11R4 distribution.
Borenstein, Nathaniel S., _M_u_l_t_i_m_e_d_i_a _A_p_p_l_i_c_a_t_i_o_n_s _D_e_v_e_l_o_p_m_e_n_t _w_i_t_h _t_h_e _A_n_-
_d_r_e_w _T_o_o_l_k_i_t, Prentice Hall, 1990. ISBN 0-13-036633-1. A tutorial and
reference manual for the Andrew toolkit. Andrew is an applications
toolkit implemented on several window systems, including X. It is in-
- 2 -
cluded in the MIT X distribution.
Bourne, Philip E. and Lawrence S. Shapiro, "Developing with DECwindows,"
_D_E_C _P_r_o_f_e_s_s_i_o_n_a_l, vol. 9, no. 2, pp. 36-44, February, 1990. A
description of DECwindows programming, focusing the User Interface
Language (UIL). UIL is used by both DECwindows and OSF/Motif.
Brunet, James, "Using PC's at X Servers," _U_N_I_X _W_o_r_l_d, _N_e_t_w_o_r_k_i_n_g _S_u_p_p_l_e_-
_m_e_n_t, pp. 83-85, 1989. An introduction to X server software for IBM
PC's.
Brunhoff, Todd, "Pleasing The Eye," _U_N_I_X _R_e_v_i_e_w, vol. 7, no. 10, pp. 64-72.
An introduction to VEX, a proposed (and since withdrawn) video exten-
sions to X.
Champine, George, Bob Scheifler, Jim Gettys, Georges Grinstein, and Bertram
Herzog, "Panel discussion on the X Window System," in _S_I_G_G_R_A_P_H'_8_8
_P_a_n_e_l _P_r_o_c_e_e_d_i_n_g_s, August, 1988. This is the transcript of an in-
teresting panel discussion on X. George Champine was moderator. Panel-
ists were Bob Scheifler, Jim Gettys, Georges Grinstein, and Bertram
Herzog. The panelists discussed the history of X and current work
at/on the X Consortium, PEX, and national and international standards
for X. This was followed by a lively question and answer session on
the present and future of X.
Clifford, William, John McConnell, and Jeffrey Friedberg, "The Development
of PEX, A Three-dimensional Graphics Extension to X11," in _P_r_o_c_e_e_d_i_n_g_s
_o_f _E_u_r_o_g_r_a_p_h_i_c_s'_8_8, September, 1988. An overview PEX, an extension to
the X protocol to support PHIGS+.
Dolan, Michael A. and Larry Hare, "X Window System Servers in Embedded Sys-
tems," in _P_r_o_c_e_e_d_i_n_g_s _o_f _C_O_M_P_C_O_N _S_p_r_i_n_g _1_9_9_0, pp. 314-319, February,
1990. A discussion of X server architectures for embedded systems,
such as accelerator boards and standalone terminals.
Epstein, Jeremy and Marvin Shugerman, "A Trusted X Window System Server for
Trusted Mach," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _F_i_r_s_t _U_S_E_N_I_X _M_a_c_h _W_o_r_k_s_h_o_p, Oc-
tober, 1990. Describes the prototype of a B3-level Trusted X.
Flowers, Ken, "Using Motif's User Interface Language," _U_N_I_X _W_o_r_l_d, vol. 7,
no. 12, pp. 119-131, December, 1990. A tutorial the Motif User Inter-
face Language (UIL). UIL is a meta-language for specifying Motif widg-
et resources and heirarchies. It allows much of a program's user in-
terface to be developed independently of the rest of the program's
functionality.
Flowers, Ken, "Programming with the Motif Toolkit," _U_N_I_X _W_o_r_l_d, vol. 7, no.
11, pp. 135-144, November, 1990. A tutorial on X Toolkit programming
using the Motif widget set. The article focuses on the various Motif
widgets, assuming that the reader understands the basics of using the
X Toolkit Only the C interface is covered. A future article will cover
the UIL interface.
- 3 -
Gettys, Jim, "Problems Implementing Window Systems in UNIX," in _P_r_o_c_e_e_d_i_n_g_s
_o_f _t_h_e _W_i_n_t_e_r, _1_9_8_6 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 89-97. Describes some of
the early work on X, especially technical issues in implementing
server-based window systems on UNIX systems.
Gettys, Jim, "Network Windowing using the X Window System," _D_r. _D_o_b_b'_s
_J_o_u_r_n_a_l, pp. 42-53, March, 1989. A discussion on the importance of
networking for window systems.
Good, Michael, "User Interface Consistency in the DECwindows Program," in
_P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _H_u_m_a_n _F_a_c_t_o_r_s _S_o_c_i_e_t_y, _V_o_l. _1, 1988. A discussion
of user interface design techniques used in developing the DECwindows
toolkit.
Greenwood, Stephen, "The DECwindows User Interface Language," _D_i_g_i_t_a_l
_T_e_c_h_n_i_c_a_l _J_o_u_r_n_a_l, vol. 2, no. 3, pp. 34-43, Summer, 1990. An over-
view of the DECwindows user interface language (UIL). UIL allows pro-
grammers to specify and configure the X Toolkit widget hierarchy at
run-time. This is very useful for rapid prototyping and international-
ization. UIL is used by both DECwindows and Motif.
Hayes, Frank, "X Terminals vs. Diskless Workstations," _U_N_I_X _W_o_r_l_d, vol. 7,
no. 10, pp. 83-86, October, 1990. A look at some of the tradeoffs
between using X terminals and diskless workstations.
Heller, Dan, "The XView Toolkit (2 parts)," _U_N_I_X _W_o_r_l_d, vol. 7, no. 6-7,
June-July, 1990. A two part tutorial on XView, based on Volume 7 of
the O'Reilly series. XView, from Sun, is a user interface toolkit for
X. It is similar to, but not compatible with (at either the end-user
or the programmer levels), MIT's X Toolkit. It supports Open Look, but
not Motif.
Hopgood, F. R. A., _M_e_t_h_o_d_o_l_o_g_y _o_f _W_i_n_d_o_w _M_a_n_a_g_e_m_e_n_t, Springer-Verlag, New
York, 1986. ISBN 0-387-16116-3. The proceedings of the important
1985 Alvey Workshop on Window Management. It includes interesting ma-
terial on problems with UNIX window systems and proposed solutions. It
also includes descriptions of early versions of current UNIX window
systems, such as X and Sun's NeWS.
Johnson, Eric and Kevin Reichard, _X _W_i_n_d_o_w _A_p_p_l_i_c_a_t_i_o_n_s _P_r_o_g_r_a_m_m_i_n_g, MIS:
Press, 1989. ISBN 1-55828-016-2. Another tutorial on Xlib program-
ming. This book has lots and lots of examples, but coverage of complex
subjects is not as deep as Jones' book. Unfortunately, some of the ex-
ample programs are poorly designed and may not work with all systems.
Johnson, Eric and Kevin Reichard, _A_d_v_a_n_c_e_d _X _W_i_n_d_o_w _A_p_p_l_i_c_a_t_i_o_n_s _P_r_o_g_r_a_m_-
_m_i_n_g, MIS: Press, 1990 An "advanced" version of the authors' previous
book. Only Xlib programming is convered. The X11R4 ICCCM section is
adequate, but, aside from that, this isn't as useful as Oliver Jones'
book.. ISBN 1-55828-016-2.
Jones, Oliver, _I_n_t_r_o_d_u_c_t_i_o_n _t_o _t_h_e _X _W_i_n_d_o_w _S_y_s_t_e_m, Prentice-Hall, 1988,
1989. ISBN 0-13-499997-5. An excellent introduction to programming
with Xlib. Written with the programmer in mind, this book includes
- 4 -
many practical tips that are not found anywhere else. This book is not
as broad as the O'Reilly Xlib tutorial and doesn't offer as many exam-
ples as the Johnson & Reichard book, but Jones is probably the most
experienced X programmer of this group and this shows in the quality
and depth of the material in the book. Originally written for X11R1,
recent printings have included corrections and additions. The sixth
printing should have X11R4 material.
Keller, Brian J., _A _P_r_a_c_t_i_c_a_l _G_u_i_d_e _t_o _X _W_i_n_d_o_w _P_r_o_g_r_a_m_m_i_n_g, CRC Press,
1990. ISBN 0-8493-7406-5. Another tutorial on X application writing.
This one is uses the X Toolkit and Motif.
Kent, Christopher, "XDPS: A Display PostScript System Extension for
DECwindows," _D_i_g_i_t_a_l _T_e_c_h_n_i_c_a_l _J_o_u_r_n_a_l, vol. 2, no. 3, pp. 64-73, Sum-
mer, 1990. An overview of Display PostScript, an extension to the X
protocol allowing PostScript graphics in X windows.
Leffler, Samuel J., "A Window On The Future?," _U_N_I_X _R_e_v_i_e_w, vol. 6, no. 6,
pp. 62-69. This article compares Sun's NeWS with other window sys-
tems, such as X, and concludes that, despite its problems, NeWS is the
window system of the future. See Robin Schaufler's paper for a more
technical comparison of the X and NeWS.
Lemke, David and David S. H. Rosenthal, "Visualizing X11 Clients," in
_P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _W_i_n_t_e_r, _1_9_8_9 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 125-138. A tu-
torial on ``visuals'', the X abstraction of display hardware capabili-
ties. Proper use of visuals is necessary for an X client to take ad-
vantage of the capabilities of a server's hardware. Included in the
MIT X distribution (X11R4/doc/tutorials/visuals).
Lemon, Bob, "X Terminals Put to the Test," _U_N_I_X _W_o_r_l_d, vol. 7, no. 10, pp.
106-114, October, 1990. Another look at the X terminal market.
Levitt, Jason, "XVT: Safe Haven In The GUI Wars," _U_N_I_X _T_o_d_a_y, p. 56+, Oc-
tober 29, 1990. A review of XVT, a software package that claims to
provide a common API for developing user interfaces for Motif, Macin-
tosh, Microsoft Windows, Presentation Manager, and dumb character
terminals. See also Marc Rochkind's USENIX paper.
Linton, Mark A., John M. Vlissides, and Paul R. Calder, "Composing User In-
terfaces with InterViews," _I_E_E_E _C_o_m_p_u_t_e_r, vol. 22, no. 2, pp. 8-22,
February, 1989. Describes the InterViews user interface toolkit,
written in C++ and based on the X Window System. Even if you don't
plan to use InterViews as a toolkit, it provides a good C++ binding to
the X protocol.
Macklem, Rick, Jim Linders, and Hugh Smith, "G Shell Environment," in
_P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _S_u_m_m_e_r, _1_9_8_8 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 15-22.
Describes a rudimentary graphical UNIX shell written as a X client.
Mansfield, Niall, _T_h_e _X _W_i_n_d_o_w _S_y_s_t_e_m: _A _U_s_e_r'_s _G_u_i_d_e, Addison-Wesley, Am-
sterdam, 1989. ISBN 0-201-51341-2. A tutorial on X for end-users, not
programmers. The first edition of this book, based on X11R3, is
available only in Europe. The second edition, based on X11R4, should
- 5 -
be available in both Europe and the U.S. in the Spring of 1991.
McCormack, Joel and Paul Asente, "Using the X Toolkit or How to Write a
Widget," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _S_u_m_m_e_r, _1_9_8_8 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 1-
13. An excellent tutorial on writing basic X Toolkit widgets. Poten-
tial widget writers (and maybe users, too) should probably start by
reading this paper. Unfortunately, it's based on X11R2, so some of it
is out of date.
McCormack, Joel and Paul Asente, "An Overview of the X Toolkit," in
_P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _A_C_M _S_I_G_G_R_A_P_H _S_y_m_p_o_s_i_u_m _o_n _U_s_e_r _I_n_t_e_r_f_a_c_e _S_o_f_t_w_a_r_e,
pp. 46-55, October, 1988. An excellent architectural overview of the
X Toolkit, including its goals, how it accomplished them, and possible
future directions.
McCormack, Joel, "Smart Code, Stupid Memory: A Fast X Server for a Dumb
Color Frame Buffer," DEC Western Research Laboratory Technical Note 9,
September, 1989. Describes the implementation of one of the best X
servers currently available, that of the color DECstation 3100. Algo-
rithms as well as performance measurements are discussed. For informa-
tion on obtaining free copies of this report, send electronic mail to
``wrl-techreports@decwrl.dec.com''. Your message should contain the
single word ``help''.
McGregor, Scott, "An Overview of the DECwindows Architecture," _D_i_g_i_t_a_l
_T_e_c_h_n_i_c_a_l _J_o_u_r_n_a_l, vol. 2, no. 3, pp. 9-15, Summer, 1990. An overview
of DECwindows, a superset of X for DEC workstations.
McLoughlin, Lee, "A Simple Guide to Porting the X Window System," in
_P_r_o_c_e_e_d_i_n_g_s _o_f _E_U_U_G _S_p_r_i_n_g _1_9_8_9, pp. 283-291, Brussels, April 3-7,
1989. A brief, but good, discussion of the interface between the X
server and the underlying operating system. The EUUG conference is
sponsored by the European Unix Users' Group.
Mehta, Sunil, "User Interfaces and the IEEE P1201 Committee," _U_N_I_X _R_e_v_i_e_w,
vol. 8, no. 1, pp. 14-20. A review of the activities of the IEEE
P1201 standards committee, by its chairman. P1201 is trying to develop
international standards for the the X Window System client side (Xlib
and above). Lower levels of X (servers and protocol) are being stand-
ardized by ANSI Task Group X3H3.6.
Mikes, Steve, "Fast Track To Motif Applications," _U_N_I_X _W_o_r_l_d, vol. 8, no.
3, pp. 101-106, March, 1991. This article reviews a couple of pro-
ducts that help programmers to quickly port dumb terminal applications
to X and Motif. Some would call this approach a hack, but it is easy
and does provide some functionality beyond dumb terminal emulators.
Mikes, Steven, _X _W_i_n_d_o_w _S_y_s_t_e_m _T_e_c_h_n_i_c_a_l _R_e_f_e_r_e_n_c_e, Addison-Wesley, 1990.
ISBN 0-201-52370-1. A quick reference manual for X11R3, including
Xlib, Xt, fonts, bitmaps, keysyms, Motif, and OPEN LOOK.
Mikes, Steven, "3 X Window Servers For DOS," _U_N_I_X _W_o_r_l_d, vol. 7, no. 11,
pp. 113-118, November, 1990. A review of three of the more popular X
servers for IBM PCs: PC-Xview, PC-Xsight, and XVision. None of these
- 6 -
products allows you to run X clients on the PC, though Xvision does
allow you to simultaneously display remote X clients and local Micro-
soft Windows clients.
Miller, John David, _A_n _O_P_E_N _L_O_O_K _a_t _U_N_I_X: _A _D_e_v_e_l_o_p_e_r'_s _G_u_i_d_e _t_o _X, M&T
Books, 1990. ISBN 1-55-851057-5 A tutorial on the Open Look widget
set from AT&T. Contact M&T Books at 1-800-533-4372.
Mirchandani, Dinesh and Prabuddha Biswas, "Ethernet Performance of Remote
DECwindows Applications," _D_i_g_i_t_a_l _T_e_c_h_n_i_c_a_l _J_o_u_r_n_a_l, vol. 2, no. 3,
pp. 84-94, Summer, 1990. Describes a methodology for analyzing the
performance of networked X applications.
Myers, Brad A., "Window Interfaces: A Taxonomy of Window Manager User In-
terfaces," _I_E_E_E _C_o_m_p_u_t_e_r _G_r_a_p_h_i_c_s & _A_p_p_l_i_c_a_t_i_o_n_s, vol. 8, no. 5, pp.
65-84, September, 1988. A taxonomy of current window system user in-
terfaces, including the UWM window manager for X. Discusses and com-
pares the features of each user interface. Contrast this with Rob
Pike's window system user interface guidelines. Myers is a well known
user interface researcher.
Nadeau, David R., "High-Performance 3-D Graphics In A Window Environment,"
_C_o_m_p_u_t_e_r _T_e_c_h_n_o_l_o_g_y _R_e_v_i_e_w, pp. 89-93, Fall, 1988. A discussion on
integrating Megatek's high-performance 3D graphics hardware/software
with X.
Nye, Adrian, "The X Window System Protocol," _U_N_I_X _W_o_r_l_d, vol. 6, no. 9, pp.
105-113, September, 1989. An introduction to the X protocol. This is
a short version of Nye's introduction to Volume 0 of O'Reilly's X
series.
O'Reilly, Tim, "The Toolkits (and Politics) of X Windows," _U_N_I_X _W_o_r_l_d, vol.
6, no. 2, pp. 66-73, February, 1989. An introduction to some of the
popular widget sets available for the X Toolkit.
O'Reilly and Associates, _T_h_e _X _W_i_n_d_o_w _S_y_s_t_e_m _i_n _a _N_u_t_s_h_e_l_l, O'Reilly and
Associates, 1990. ISBN 0-937175-24-2. A quick reference guide to Xlib
and Xt and some associated configuration files. It leaves out alot of
material in order to acheive a small, convenient size. Unfortunately,
there are lots of typos (at least in the first edition) and the cross
referencing is weak.
O'Reilly and Associates, _T_h_e _X _W_i_n_d_o_w _S_y_s_t_e_m _S_e_r_i_e_s (_s_e_v_e_r_a_l _v_o_l_u_m_e_s),
O'Reilly and Associates, 1988, 1989, 1990. O'Reilly publishes a large
collection of X books. Volumes 0, 2, 3, and 5 are lightly edited ver-
sions of the MIT manuals (protocol manual, Xlib manual pages, popular
client manual pages, and X Toolkit); some include additional tutorial
or introductory chapters. Volume 1 (by Adrian Nye) is a tutorial on
Xlib. It's broader than the Oliver Jones book, but doesn't cover the
practical material as well. Volume 4 (by Adrian Nye and Tim O'Reilly)
is a tutorial on the X Toolkit intrinsics (Xt). It's generally inferi-
or to the Asente & Swick book, especially in the sections on subclass-
ing widgets. Volume 6 (not yet available) will cover various widget
sets, including OSF/Motif, AT&T Open Look, MIT Athena, etc.). Volume 7
- 7 -
(by Dan Heller) is a tutorial on XView, a toolkit similar to, but not
compatible with, the X Toolkit. Mostly written/edited by technical
writers rather than engineers, these are probably the most profession-
al looking of the X books, though they are often more superficial and
less accurate than the competition. They books are updated regularly,
with the most recent versions of some of them updated to X11R4.
O'Reilly and Associates, _T_h_e _X _W_i_n_d_o_w _S_y_s_t_e_m _S_e_r_i_e_s (_M_o_t_i_f _E_d_i_t_i_o_n_s),
O'Reilly and Associates, 1991. 0-937175-61-7, 0-937175-62-5. O'Reilly
has written Motif (version 1.1) editions of Volumes 3 (X User's Manu-
al) and Volume 4 (X Toolkit Intrinsics) of their X series. The Motif-
specific material is very basic, especially in Volume 4. The section
on subclassing Motif widgets, in particular, has some big holes.
Open Software Foundation, _O_S_F/_M_o_t_i_f _S_e_r_i_e_s (_5 _v_o_l_u_m_e_s), Prentice Hall The
volumes include Motif _S_t_y_l_e _G_u_i_d_e, _P_r_o_g_r_a_m_m_e_r'_s _G_u_i_d_e, _P_r_o_g_r_a_m_m_e_r'_s
_R_e_f_e_r_e_n_c_e, _U_s_e_r'_s _G_u_i_d_e, and _A_p_p_l_i_c_a_t_i_o_n _E_n_v_i_r_o_n_m_e_n_t _S_p_e_c_i_f_i_c_a_t_i_o_n
(_A_E_S) _U_s_e_r _E_n_v_i_r_o_n_m_e_n_t _V_o_l_u_m_e. Motif is a user interface programming
environment for X. It was designed and developed by members of the
Open Software Foundation, including DEC, HP, and IBM. These companies
have committed to using Motif as their standard user interface. There
are two editions of these books, one for releae 1.0 and one for
release 1.1. Motif 1.1 is based on X11R4., 1990.
Pike, Rob, "Window Systems Should Be Transparent," _U_S_E_N_I_X _C_o_m_p_u_t_i_n_g _S_y_s_-
_t_e_m_s, vol. 1, no. 3, pp. 279-296, Summer, 1988. Some window system
user interface guidelines, based on MUX window system for the BLIT
terminal, with some comparisons to X. Contrast this to Myers' paper.
Pike is the developer of the BLIT.
Pike, Rob, "A Concurrent Window System," _U_S_E_N_I_X _C_o_m_p_u_t_i_n_g _S_y_s_t_e_m_s, vol. 2,
no. 2, pp. 133-153, Spring, 1989. A description of a multi-threaded
window system written using a concurrent programming language. The
design is shown to be simpler than the single threaded design of X.
Probst, Richard, "OPEN LOOK Toolkits," _S_u_n_T_e_c_h_n_o_l_o_g_y, vol. 1, no. 4, pp.
76-86, Autumn, 1988. OPEN LOOK is a user interface specification
designed by AT&T and Sun. This paper discusses OPEN LOOK programming
toolkits, including two for the X Window System.
Rao, R. and S. Wallace, "The X Toolkit," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _S_u_m_m_e_r, _1_9_8_7
_U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e. Describes an early version of the X Toolkit.
Rochkind, Marc J., "XVT: A Virtual Toolkit for Portability Between Window
Systems," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _W_i_n_t_e_r, _1_9_8_9 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp.
151-163. Describes the Extensible Virtual Toolkit (XVT), a user in-
terface toolkit that provides a uniform application programming inter-
face to several different window systems, while providing the ``look
and feel'' appropriate for the window system. Supported window sys-
tems include X11, Microsoft Windows, OS/2 Presentation Manager, and
the Macintosh.
Rosenthal, David S. H., "A Simple X11 Client Program," in _P_r_o_c_e_e_d_i_n_g_s _o_f
_t_h_e _W_i_n_t_e_r, _1_9_8_8 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 229-235. A version of the
- 8 -
``hello, world'' paper, presenting and comparing the basics of the X
library and the X Toolkit. All potential X programmers (Xlib or X
toolkit) should understand everything in this paper before they at-
tempt to write any X programs. Included in the MIT X distribution
(X11R4/doc/tutorials/HelloWorld) and reprinted as ``Going for
Baroque'' in the June or July, 1988 (vol. 6, no. 6) issue of _U_N_I_X _R_e_-
_v_i_e_w magazine.
Rosenthal, David S. H. and Adam R. de Boor, _G_o_d_z_i_l_l_a'_s _G_u_i_d_e _t_o _P_o_r_t_i_n_g _t_h_e
_X _V_1_1 _S_a_m_p_l_e _S_e_r_v_e_r, 1988. A hackers guide to quick-and-dirty porting
of the sample server to memory-mapped monochrome and color frame
buffers. This document is included in the MIT X11R4 distribution.
Rosenthal, David S. H., "Window Exchange," _U_N_I_X _R_e_v_i_e_w, vol. 7, no. 12, pp.
58-64, January, 1990. An excellent review of X client interoperabili-
ty problems, by the author of the X Inter-Client Communication Conven-
tions Manual (IC3M). About half the paper discusses differences among
servers that an application writer must understand. The other half
discusses (IC3M) issues such as selections and dealing with the window
manager.
Rost, Randi, Jeffrey Friedberg, and Peter Nishimoto, "PEX: A Network-
Transparent 3D Graphics System," _I_E_E_E _C_o_m_p_u_t_e_r _G_r_a_p_h_i_c_s & _A_p_p_l_i_c_a_-
_t_i_o_n_s, pp. 14-26, July, 1989. A good overview of PEX, the
PHIGS/PHIGS+ 3D extension to X. A complete PEX is currently being
developed by Sun under contract to the MIT X Consortium and is
scheduled to be publically available in 1990. See also the Thomas &
Friedmann paper on PEX.
Rost, Randi J., _X _a_n_d _M_o_t_i_f _Q_u_i_c_k _R_e_f_e_r_e_n_c_e _G_u_i_d_e, DEC Press, 1990. ISBN
1-55558-052-1. A quick reference guide to Xlib, the X Toolkit, and
Motif. It's a little bulkier than the O'Reilly quick reference, but
the cross referencing is much better.
Ryan, Michael and James VanGilder, "The Development of DECwindows VMS
Mail," _D_i_g_i_t_a_l _T_e_c_h_n_i_c_a_l _J_o_u_r_n_a_l, vol. 2, no. 3, pp. 74-83, Summer,
1990. Describes the engineering and development of a moderate sized X
application.
Salzman, Isaac J., "A Look At Graphical Shells," _U_N_I_X _R_e_v_i_e_w, vol. 8, no.
11, pp. 103-113, November, 1990. A comparison of the two most popular
X-based graphical UNIX shells: Looking Glass (by Visix Software of
Reston, Virginia) and X.desktop (by IXI Ltd., Cambridge, UK).
Schaufler, Robin, "X11/NeWS Design Overview," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _S_u_m_m_e_r,
_1_9_8_8 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 23-35. Discusses Sun's X/NeWS window sys-
tem. Compares the functionality of X and NeWS and describes a server
that merges the two.
Scheifler, Robert and Jim Gettys, "The X Window System," _A_C_M _T_r_a_n_s_a_c_t_i_o_n_s
_o_n _G_r_a_p_h_i_c_s, vol. 5, no. 2, pp. 79-109, April, 1986. The first pub-
lished description of X. Although it discusses X10, it is still one
of the most comprehensive overviews of X. This paper is being updated
to X11 by Jim Gettys, Phil Karlton, and Scott McGregor.
- 9 -
Scheifler, Robert and James Gettys, _X _W_i_n_d_o_w _S_y_s_t_e_m, _S_e_c_o_n_d _E_d_i_t_i_o_n, DEC
Press, 1990. ISBN 1-55558-050-5. The Xlib and X protocol bible by the
authors of X11. The second edition is a superset of the MIT documenta-
tion on X11R4 Xlib, X protocol, XLFD, and ICCCM. This is THE specifi-
cation of the core of X and is required for all serious X programmers,
though it may be rough going for those with little experience in in-
teractive computer graphics. See also Asente & Swick's companion book
on the X Toolkit.
Schmandt, Chris, Mark Ackerman, and Debby Hindus, "Augmenting a Window Sys-
tem with Speech Input," _I_E_E_E _C_o_m_p_u_t_e_r, vol. 23, no. 8, pp. 50-56, Au-
gust, 1990. Describes Xspeak, an experimental speech recognition
client that allows voice access to X windows.
Shein, Barry, "What Light Through Yonder Window Breaks?," _S_u_n _E_x_p_e_r_t, vol.
1, no. 6, pp. 44-51, April, 1990. A review of OpenWindows, Sun's pro-
duct version of X.
Shein, Barry, "Primal Screens," _S_u_n _E_x_p_e_r_t, vol. 1, no. 3, pp. 56-69, Janu-
ary, 1990. An interesting, though somewhat religious, comparison of X
and Sun's NeWS window system. It concludes, "even Scott McNealy has
spoken of NeWS as a failure as a standard, although he hastens to add
that it was a technological success."
Southerton, Alan, "Many Paths To X Window Programming," _U_N_I_X _W_o_r_l_d, vol. 7,
no. 5, pp. 66-73, May, 1990. A survey of user interface development
tools for X. It's somewhat superficial, but mentions most of the popu-
lar tools.
Southerton, Alan and Steve Mikes, "Motif on Sun Workstations," _U_N_I_X _W_o_r_l_d,
vol. 8, no. 3, pp. 52-58, March, 1991. Motif is the most popular user
interface programming environment for UNIX workstations, but it is not
avaialable for Sun workstations. This article reviews some Motif im-
plementations for Suns from independent software vendors.
Spine, Thomas and Jacob VanNoy, "The Evolution of the X User Interface
Style," _D_i_g_i_t_a_l _T_e_c_h_n_i_c_a_l _J_o_u_r_n_a_l, vol. 2, no. 3, pp. 44-51, Summer,
1990. Describes the design and evolution of the DECwindows look and
feel for the X Window System.
Stroyan, Michael, "Three-Dimensional Graphics Using the X Window System,"
_D_r. _D_o_b_b'_s _J_o_u_r_n_a_l, vol. 15, no. 2, pp. 28-36, February, 1990. A high
level description of various approaches to developing 3D graphics
tools for X, including those of the PHIGS Extension to X (PEX) and
HP's Starbase-on-X11 (sox11).
Sung, Hsien Ching Kelvin, Greg Rogers, and William Kubitz, "A Critical
Evaluation of PEX," _I_E_E_E _C_o_m_p_u_t_e_r _G_r_a_p_h_i_c_s & _A_p_p_l_i_c_a_t_i_o_n_s, vol. 10,
no. 6, pp. 65-75, November, 1990. An evaluation of PEX, the X exten-
sion to support PHIGS, from the point of view of a PHIGS implementor.
Sun Microsystems, _O_P_E_N _L_O_O_K _G_r_a_p_h_i_c_a_l _U_s_e_r _I_n_t_e_r_f_a_c_e _S_e_r_i_e_s, Addison-
Wesley, 1990. ISBN 0-201-52365-5, ISBN 0-201-42364-7. This series in-
cludes _F_u_n_c_t_i_o_n_a_l _S_p_e_c_i_f_i_c_a_t_i_o_n_s and _A_p_p_l_i_c_a_t_i_o_n _S_t_y_l_e _G_u_i_d_e. OPEN
- 10 -
LOOK was designed by AT&T and Sun and implementations are available
from both. AT&T's implementation uses the X Toolkit. Sun's implementa-
tion uses XView, a similar, but not compatible, toolkit.
Swick, Ralph R. and Mark S. Ackerman, "The X Toolkit: More Bricks for
Building User Interfaces," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _W_i_n_t_e_r, _1_9_8_8 _U_S_E_N_I_X
_C_o_n_f_e_r_e_n_c_e, pp. 221-233. An introduction to the X Toolkit. Describes
the toolkit architecture and the basic Athena widgets.
Thomas, Spencer W. and Martin Friedmann, "PEX - A 3-D Extension to X Win-
dows," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _W_i_n_t_e_r, _1_9_8_9 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 139-
149. Describes the demonstration implementation of PEX, the
PHIGS/PHIGS+ 3D extension to X. A complete PEX is currently being
developed by Sun under contract to the MIT X Consortium and is
scheduled to be publically available in 1990. See also the Rost, _e_t
_a_l, paper on PEX.
Treggiari, Leo and Michael Collins, "Development of the XUI Toolkit," _D_i_g_i_-
_t_a_l _T_e_c_h_n_i_c_a_l _J_o_u_r_n_a_l, vol. 2, no. 3, pp. 24-33, Summer, 1990. An
overview of the XUI widget set. The Motif widget set uses the same
application programming interface.
Wagner, Mitch, "The Rise of X Terminals," _U_N_I_X _T_o_d_a_y, p. 20+, October 29,
1990. Another look at the X terminal market.
Wood, Patrick, "Introduction to Xlib Programming (2 parts)," _U_N_I_X _W_o_r_l_d,
vol. 6, October-November, 1989. This is a two part tutorial article
on Xlib programming. Not as good as Rosenthal's ``hello, world'' arti-
cle.
X/Open Company, Ltd., _X/_O_p_e_n _P_o_r_t_a_b_i_l_i_t_y _G_u_i_d_e: _W_i_n_d_o_w _M_a_n_a_g_e_m_e_n_t,
Prentice-Hall, 1988. X/Open is an international user group of UNIX
hardware and software developers. It publishes portability guidelines
with the goal that developers that follow these guidelines will be
portable across other hardware and software supporting the guidelines.
The X/Open window management guidelines are based on the X11R3 specif-
ications.
Young, Douglas A., _X _W_i_n_d_o_w _S_y_s_t_e_m: _P_r_o_g_r_a_m_m_i_n_g _a_n_d _A_p_p_l_i_c_a_t_i_o_n_s _W_i_t_h _X_t,
_O_S_F/_M_o_t_i_f _E_d_i_t_i_o_n, Prentice-Hall, 1990. ISBN 0-13-497074-8. A basic
tutorial on writing programs using the X11R3 X Toolkit and Motif 1.0.
Examples use the Motif widget set and are available in electronic
form. The Motif coverage is not complete, however, and the UIL inter-
face to Motif is not covered at all. There are section on subclassing
widgets is weak. See the Asente & Swick book for better coverage
there.
Young, Douglas A., _O_S_F/_M_o_t_i_f _R_e_f_e_r_e_n_c_e _M_a_n_u_a_l, Prentice-Hall, 1990. ISBN
0-13-642786-3. A reference manual for the most popular C languague
Motif and Xt functions. The UIL interface to Motif is not covered at
all.
Young, Douglas A., "Programming with the X Toolkit (3 parts)," _U_N_I_X _W_o_r_l_d,
vol. 7, no. 1-3, January-March, 1990. This three part tutorial arti-
cle is based on Young's books on the X Toolkit.
Ken Lee
DEC Western Software Laboratory, Palo Alto, Calif.
Internet: klee@wsl.dec.com
uucp: uunet!decwrl!klee