Software Innovations for the Texas Instruments Explorer Computer

Total Page:16

File Type:pdf, Size:1020Kb

Software Innovations for the Texas Instruments Explorer Computer Software Innovations for the Texas Instruments Explorer Computer HARRY R. TENNANT, MEMBER, IEEE, ROGER R. BATE, MEMBER, IE EE, STEPHEN M. COREY, LAWRENCE DAVIS, PAUL KLINE, LAMOTT G. OREN, MALIPATLOLA RAJINIKANTH, RICHARD SAENZ, DANIEL STENGER, MEMBER, IEEE, AND CRAIG W. THOMPSON Invited Paper Explorer is a LISP Machine from Texas Instruments. Its software starts with a vast body of software developed at MIT. Texas Instru­ ments has stabilized that software and added more packages and utilities. Th is paper describes certain innovations in Texas Instru­ ment's software for the Explorer. Tl's software innovations were in two areas: increasing the learn­ ability of this sophisticated system and adding software compo­ nents as an aid to prototypers and software developers. Learning aid innovations are embodied in Suggestions Menus and the Uni­ versal Command Loop. Software component innovations are em­ bodied in the Universal Command Loop, the Graphics Window System and Graphics Editor, the Relational Table Manager, and the Menu-Based Natural Language Interface. The innovations repre­ sented are of two kinds: innovations in concept (Suggestions Menus, Universal Command Loop, and Menu-Based Natural Language In­ terface) and innovations in design (Graphics Window System, Rela­ tional Table Manager). I. INTRODUCTION Fig. 1. Th e Texas Instruments Explorer computer is de­ signed for creating and running LISP software. The hardware The Texas Instruments Explorer computer is a high-capa­ features a large high-resolution bit-mapped display, a mouse bility personal computer. It is intended for rapid proto­ pointing device, and a keyboard with many special keys. typing and development of software by expert programmers software that was conceived and developed at Tex as Instru­ and for other interactive applications such as VLSI design, ments for the Explorer. command, and control systems and artificial intelligence Tl's software extensions for the Explorer were made in applications. Explorer, as shown in Fig. 1, has a large high­ two categori es: 1) learning aids to enable users to acquire resolution bit-mapped display, a mouse pointing device, and maintain mastery over significant portions of this large and a keyboard with many special keys in addition to the system (e.g., there are over 10000 functions in the syste m) usual keys of a computer keyboard. It is an unusual com­ and 2) component software which programmers can in­ puter for several reasons, two of which are that 1) all the tegrate into their own applications, thus reducing develop­ software on the Explorer is w ritten in LISP and 2) there is a ment time and increasing the quality and effectiveness of great deal of software available on the machine (20 to 40 software prototypes. Mbytes), most of which is devoted to software develop­ The approaches taken by programmers using LISP Ma­ ment and interactive systems. chines are often strikingly different from the approaches The Explorer is based on the LISP Machine designed at they had used before. We give two examples taken from MIT [1), [2), and a large part of the software on it was first the experience of researchers in the Texas Instruments written at MIT [3], [4). This paper will describe the novel Computer Science Laboratory. Manuscript received january 22, 1985; revised May 15, 1985. A. "This Is Exa ctly What I Want" The authors are with the Computer Science Laboratory, Central The Equipment Croup of Texas Instruments (EC), the Research laboratories, Texas Instruments, Inc., Dallas, TX 75266, USA. division that makes military products, had been talking with 0018-9219/85/1 200-1771$01 00 ©1 985 IEEE PROCEEDINGS OF THE I EEE, VOL. 73, NO. 12, D EC EMBER 1985 1771 a customer about a large command and control system. The The natural language-graphical interface-database dem­ customer was requiring a natural language interface to a onstration was possible to construct in such a short time for database, a technology which the EG did not have at the two reasons: we had many of the large components needed time. They contacted us in the Computer Science labora­ for it and the development environment allowed us to tory of Tl (CSL) to help them w ith the natural language readily stick the pieces together. Most of the programming interface. EG described the problem to CSL, and we set up environment features came from the work of the LI SP an appointment for a demonstration of our natural lan­ Machine implementors at M IT. The component software guage interface capabi lity for the next day. used for this demonstration, the graphics window system, Th e request was for a natural language interface, but the the graphics editor, the relational database, the natural problem seemed amenable to a spatial interface to a data­ language interface, and the natural language interface gen­ base as well. One of the researchers spent a couple of erator, were all software components deve loped at Tl, which hours w ith the graphics editor creating a demonstration of w ill be described below. database access through a graphical interface. The next day, the people from EG were interested in both the graphics B. Debugging an Algorithm Visually and the natural language, and w ith their knowledge of the domain and our knowledge of the technologies, we worked A new member of CSL, previously a Pasca l and Fortran out an integration of the two approaches. EG built a data­ programmer, was assigned to learn to use LI SP Machines. base that w as realistic for the domain, we generated a He decided to learn by implementing a new approach to natural language front-end to that database. two-dimensional bin-packing. The most complicated part O ne of the uses of the system was to locate airports and of the system he wrote was a routine that would take a list fuel depots. The database recorded the latitude and longi­ of rectangles to be packed in a space and pack them there, tude coordinates of these items. O ne way to query the in list order. There were two requirements on that routine: database was to ask for all airports between, say, 41° and it needed to be fast, and it needed to produce a relative ly 43° North latitude and between 47 ° and 47.356° West dense packing. Routines that were clever enough to pro­ longitude. By integrating our graphics w indow system with duce good packings tended to take a good deal of time, the natural language capability, a map would pop up when and fast routines tended to produce bad packings. The the user needed to specify a location. He could then programmer compared several packing algorithms, search­ o utline the region of interest on the map with his mouse (a ing for one that would strike a balance between these two pointing device). Th e latitude and longitude coordinates of goals. the box would then be inserted textually into the natural Early on, the programmer decided to display the packing language query. Hence, the demonstration used graphical process as it placed the rectangles, and this decision turned query where appropriate and t extual (i.e., natural language) out to be a good one. Using the object-oriented program­ query where appropriate, even within the scope of one ming style, he created a graphical display aid in an afternoon. question. The results of database queries could also be He elaborated and refined it over the next two afternoons, displayed either graphically (e.g., the requested airports so that it showed the movement of the rectangles as they would appear on a map) or in tabular form. w ere being packed, in animated fashion. Th e effect as Two weeks from the time of the original contact be­ recta ngles moved along the edge of the packed area to tween EG and the customer, the customer was in the lab in their final positions and others slid in beside was " just like CSL personally using the demonstration system. He liked it. real life." The nature of the various packing routines could He gave us one of our best recommendations, " This system be grasped immediately by eye, w hereas it would have is so easy, I'd let a general use it." He also said, while he taken hours with printout. was using the demonstration system, " This is exactly what 1 In another five afternoons, he tried out twelve variations want," a nice thing to hear before the proposal had been on his packing algorithms, each suggested by the behavior w ritten. (TI got the contract.) of the ones preceding. At one point, he was working on Fig. 2. Partial results of a bin-packing algorithm. The algorithm maximized contact wi th the walls of the packing area, so we find the center being left open. The programmer did not appreciate this consequence of the algorithm until he saw it happen with graphical debugging tools. 1772 PROCEEDINGS O F THE IEEE , VO L. 73, N O . 12, DECEMBER 1985 algorithms that moved each new rectangle around the A. The Need for Learning A ids existing "skyline" of packed rectangles, finding the place­ The LI SP M achine, as developed at M IT, is a magnificent ment that max imized the length of its perimeter in contact workstation for a highly skilled programmer, an expert user w ith the rectangles already placed. Th e w all s of the packing of the machine. A great number of commands are available area were counted in computing the perimeter length con­ through single keystroke invocation, maximizing the rate of tacting the existing structure, and this led to an interesting flow of commands from the use r into the machine.
Recommended publications
  • Getting Started Computing at the Al Lab by Christopher C. Stacy Abstract
    MASSACHUSETTS INSTITUTE OF TECHNOLOGY ARTIFICIAL INTELLI..IGENCE LABORATORY WORKING PAPER 235 7 September 1982 Getting Started Computing at the Al Lab by Christopher C. Stacy Abstract This document describes the computing facilities at the M.I.T. Artificial Intelligence Laboratory, and explains how to get started using them. It is intended as an orientation document for newcomers to the lab, and will be updated by the author from time to time. A.I. Laboratory Working Papers are produced for internal circulation. and may contain information that is, for example, too preliminary or too detailed for formal publication. It is not intended that they should be considered papers to which reference can be made in the literature. a MASACHUSETS INSTITUTE OF TECHNOLOGY 1982 Getting Started Table of Contents Page i Table of Contents 1. Introduction 1 1.1. Lisp Machines 2 1.2. Timesharing 3 1.3. Other Computers 3 1.3.1. Field Engineering 3 1.3.2. Vision and Robotics 3 1.3.3. Music 4 1,3.4. Altos 4 1.4. Output Peripherals 4 1.5. Other Machines 5 1.6. Terminals 5 2. Networks 7 2.1. The ARPAnet 7 2.2. The Chaosnet 7 2.3. Services 8 2.3.1. TELNET/SUPDUP 8 2.3.2. FTP 8 2.4. Mail 9 2.4.1. Processing Mail 9 2.4.2. Ettiquette 9 2.5. Mailing Lists 10 2.5.1. BBoards 11 2.6. Finger/Inquire 11 2.7. TIPs and TACs 12 2.7.1. ARPAnet TAC 12 2.7.2. Chaosnet TIP 13 3.
    [Show full text]
  • "Documentation Update: Future-Common-Lisp
    Genera 8.1ReleaseNotes Genera8.1:IntroductionandHighlights Genera 8.1 includes several new features as well as a number of bug fixes and performance improvements. Genera 8.1 is a unified release for all Symbolics plat forms,includingthenewMacIvorynodel3. Thenewfeaturesareasfollows: • Common Lisp Interface Manager (CLIM). CLIM provides a highlevel language for defining presentationbased user interfaces that run under Genera and CLOE, on UNIXbasedworkstations, and on PCs that support Common Lisp.The importantfeaturesofCLIMare: ° CLIM provides a portable user interface. CLIM fits into an existing host system. With CLIM you can achieve the look and feel of the target host system without implementing it directly, and with outusingthelowlevelimplementationlanguageofthehostsystem. ° CLIM is based on a presentation model. The CLIM presentation model provides the advantages of having the visual representation of an object linked directly to its semantics. CLIM’s presenta tionmodelissimilartothatusedinDynamicWindows. ° CLIM supports high-level programming techniques. Using CLIM capabilities you can develop a user interfaceconveniently, includ ing formatted output, graphics,windowing, and commands that are invoked by typingtextorclickingamouse,amongothertechniques. • Some features from the X3J13 Common Lisp, including Conditions and the LOOP Facility See the section "X3J13 Common Lisp Features". See the section "Documentation Update: futurecommonlisp:loop". See the section "Documenta tionUpdate:X3J13Conditions". • Netbooting for Ivory machines. In Genera 8.1, netbooting Ivory machines works exactly the same as netbooting 3600family machines. See the section "Netboot ing". You should note, however, that you cannot netboot preGenera 8.1 worlds fromIvorymachines. • Significant performance improvement of Tables. The external interface is un changed, but the underlying implementation has been redesigned and reimple mentedforspeed. Page 62 • Optical and SCSI disk drive support on XL machines.
    [Show full text]
  • Xemacs User's Manual
    XEmacs User's Manual July 1994 (General Public License upgraded, January 1991) Richard Stallman Lucid, Inc. and Ben Wing Copyright c 1985, 1986, 1988 Richard M. Stallman. Copyright c 1991, 1992, 1993, 1994 Lucid, Inc. Copyright c 1993, 1994 Sun Microsystems, Inc. Copyright c 1995 Amdahl Corporation. Permission is granted to make and distribute verbatim copies of this manual provided the copy- right notice and this permission notice are preserved on all copies. Permission is granted to copy and distribute modified versions of this manual under the con- ditions for verbatim copying, provided also that the sections entitled \The GNU Manifesto", \Distribution" and \GNU General Public License" are included exactly as in the original, and provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one. Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions, except that the sections entitled \The GNU Manifesto", \Distribution" and \GNU General Public License" may be included in a translation approved by the author instead of in the original English. i Short Contents Preface ............................................ 1 GNU GENERAL PUBLIC LICENSE ....................... 3 Distribution ......................................... 9 Introduction ........................................ 11 1 The XEmacs Frame ............................... 13 2 Keystrokes, Key Sequences, and Key Bindings ............. 17
    [Show full text]
  • THE PERFECT KEYBOARD for GNU EMACS and XML: the SYMBOLICS/APPLE MACIVORY John Bear November, 2002
    THE PERFECT KEYBOARD FOR GNU EMACS AND XML: THE SYMBOLICS/APPLE MACIVORY John Bear November, 2002 This paper has been in preparation for too long. I finally decided (May 31, 2005) to post it as is, figuring something is better than nothing. This article is for two groups of people: people who use Emacs and people who don't. My purpose is simple. I want somebody, Apple or Symbolics, or some third party, to bring back the Symbolics MacIvory keyboard. The way I hope to accomplish this is to let people know that it exists, and that it's perfect for Emacs and XML, and merely damn good for everything else. If enough of us make it clear there's a market, I figure someone will start selling them again. We Emacs users win, and so does Symbolics or Apple, or whoever starts selling them. Much of this article is about how the keyboard was designed to work with Emacs, but the rest is about how it out-performs other keyboards even for normal typing tasks. The MacIvory was an Apple Macintosh computer that had a Symbolics Lisp machine inside, and was sold around 1987. It came with a Symbolics keyboard that had the same layout as earlier Symbolics keyboards, but with keys that were easier to press. It was designed (as were all Symbolics keyboards) to be used with the Zmacs editor, a version of Emacs. Although the keyboard is not a split keyboard, it was designed with kinesiology in mind and deserves to be considered an ergonomic keyboard.
    [Show full text]
  • Lisp Lore : a Guide to Programming the Lisp Machine
    LISP LORE: A GUIDE TO PROGRAMMING THE LISP MACHINE Hank Bromley ^g. LISP LORE: A GUIDE TO PROGRAMMING THE LISP MACHINE AT&T LISP LORE: A GUIDE TO PROGRAMMING THE LISP MACHINE by Hank Bromley AT&T Bell Laboratories W KLUWER ACADEMIC PUBLISHERS Boston/ Dordrecht/ Lancaster Distributors for North America: Kluwer Academic Publishers 101 Philip Drive Assinippi Park Norwell, Massachusetts 02061, USA Distributors for the UK and Ireland: Kluwer Academic Publishers MTP Press Limited Falcon House, Queen Square Lancaster LAI 1RN, UNITED KINGDOM Distributors for all other countries: Kluwer Academic Publishers Group Distribution Centre Post Office Box 322 3300 AH Dordrecht, THE NETHERLANDS Library of Congress Cataloging-in-Publication Data Bromley, Hank. Lisp lore. Includes index. 1. LISP (Computer program language) I. Title. QA76.73.L23B75 1986 005.133 86-7377 ISBN 0-89838-220-3 Copyright © 1986 by Bell Telephone Laboratories, Incorporated. Portions of this book are copyrighted by Symbolics, Inc. All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, mechanical, photocopying, recording, or otherwise, without the prior written permission of the publisher, Kluwer Academic Publishers, 101 Philip Drive, Assinippi Park, Norwell, Massachusetts 02061. Printed in the United States of America TABLE OF CONTENTS LIST OF FIGURES 5.1 1 7 TABLE OF CONTENTS 10.4 Messing with the mouse blinker 186 10.5 The :drop-icon method 187 10.6 Setting up the comtab 188 10.7 Getting in the
    [Show full text]
  • Emacs, Lisp, and Python Programming Information for Umaine COS 470
    Emacs, Lisp, and Python Programming Information for UMaine COS 470 Roy M. Turner Spring, 2021 (version 2021-01-23) Contents 1 Emacs 3 1.1 What is Emacs, anyway? ................................. 3 1.2 Installing Emacs ...................................... 4 1.3 Using Emacs ........................................ 4 1.3.1 Starting and quitting Emacs ........................... 4 1.3.2 Interrupting Emacs ................................. 5 1.3.3 Learning Emacs basics ............................... 5 1.3.4 Customizing Emacs ................................ 5 1.3.5 Editing Lisp files .................................. 8 1.3.6 Finding and installing Emacs packages ...................... 10 1.3.7 Useful modes and commands ........................... 10 2 Lisp 13 2.1 What is Lisp, anyway? ................................... 13 2.2 Installing Lisp ........................................ 14 2.2.1 Pre-packaged Lisp+Emacs ............................. 15 2.2.2 Installing the Lisp and Emacs separately ..................... 15 2.3 Using Lisp Within Emacs ................................. 16 2.3.1 Starting and quitting Lisp ............................. 16 2.3.2 Editing and evaluating functions ......................... 17 2.3.3 Loading functions into Lisp ............................ 17 2.3.4 I/O in Lisp ..................................... 18 2.3.5 Getting help .................................... 19 2.3.6 Debugging Lisp programs ............................. 20 2.4 Lisp libraries and packages ................................ 21 2.5 Resources
    [Show full text]
  • Text Editing and 3 Processing Symbolicstm
    Text Editing and 3 Processing symboliCSTM Cambridge I Massachusetts Text Editing and Processing # 999020 July 1986 This document corresponds to Genera 7.0 and later releases. The software, data, and information contained herein are proprietary to, and comprise valuable trade secrets of, Symbolics, Inc. They are given in confidence by Symbolics pursuant to a written license agreement, and may be used, copied, transmitted, and stored only in accordance with the terms of such license. This document may not be reproduced in whole or in part without the prior written consent of Symbolics, Inc. Copyright© 1986,1985,1984,1983,1982,1981,1980 Symbolics,lnc. All Rights Reserved. Portions of font library Copyright © 1984 Bitstream Inc. All Rights Reserved. Portions Copyright © 1980 Massachusetts Institute of Technology. All Rights Reserved. Symbollcs, Symbollcs 3600, Symbollcs 3670, Symbollcs 3675, Symbollcs 3640, Symbollcs 3645, Symbollcs 3610, Genera, Symbollcs-L1sp®, Wheels, Symbollcs Common Lisp, Zetallsp®, Dynamic Windows, Document Examiner, Showcase, SmartStore, SemantiCue, Frame-Up, Firewall, S-DYNAMICS®, S-GEOMETRY, S-PAINT, S-RENDER®, MACSYMA, COMMON LISP MACSYMA, CL-MACSYMA, LISP MACHINE MACSYMA, MACSYMA Newsletter and Your Next Step In Computing are trademarks of Symbolics, Inc. Restricted Rights Legend Use, duplication, and disclosure by the Government are subject to restrictions as set forth in subdivision (b)(3)(ii) of the Rights in Technical Data and Computer Software Clause at FAR 52.227-7013. Symbolics, Inc. 4 New England Tech Center 555 Virginia Road Concord, MA 01742 Text written and produced on Symbolics 3600-family computers by the Documentation Group of Symbolics, Inc. Text masters produced on Symbolics 3600-family computers and printed on Symbolics LGP2 Laser Graphics Printers.
    [Show full text]
  • Guide to the Herbert Stoyan Collection on LISP Programming, 2011
    Guide to the Herbert Stoyan collection on LISP programming Creator: Herbert Stoyan 1943- Dates: 1955-2001, bulk 1957-1990 Extent: 105 linear feet, 160 boxes Collection number: X5687.2010 Accession number: 102703236 Processed by: Paul McJones with the aid of fellow volunteers John Dobyns and Randall Neff, 2010 XML encoded by: Sara Chabino Lott, 2011 Abstract The Herbert Stoyan collection on LISP programming contains materials documenting the origins, evolution, and use of the LISP programming language and many of its applications in artificial intelligence. Stoyan collected these materials during his career as a researcher and professor, beginning in the former German Democratic Republic (Deutsche Demokratische Republik) and moving to the Federal Republic of Germany (Bundesrepublik Deutschland) in 1981. Types of material collected by Stoyan include memoranda, manuals, technical reports, published and unpublished papers, source program listings, computer media (tapes and flexible diskettes), promotional material, and correspondence. The collection also includes manuscripts of several books written by Stoyan and a small quantity of his personal papers. Administrative Information Access Restrictions The collection is open for research. Publication Rights The Computer History Museum (CHM) can only claim physical ownership of the collection. Users are responsible for satisfying any claims of the copyright holder. Permission to copy or publish any portion of the Computer History Museum’s collection must be given by the Computer History Museum. Preferred Citation [Identification of Item], [Date], Herbert Stoyan collection on LISP programming, Lot X5687.2010, Box [#], Folder [#], Computer History Museum Provenance The Herbert Stoyan collection on LISP programming was donated by Herbert Stoyan to the Computer History Museum in 2010.
    [Show full text]
  • Guide to the Herbert Stoyan Collection on LISP Programming
    http://oac.cdlib.org/findaid/ark:/13030/kt038nf156 No online items Guide to the Herbert Stoyan collection on LISP programming Paul McJones with the aid of fellow volunteers John Dobyns and Randall Neff Computer History Museum 1401 N. Shoreline Blvd. Mountain View, California 94043 Phone: (650) 810-1010 Email: [email protected] URL: http://www.computerhistory.org © 2011 Computer History Museum. All rights reserved. Guide to the Herbert Stoyan X5687.2010 1 collection on LISP programming Guide to the Herbert Stoyan collection on LISP programming Collection number: X5687.2010 Computer History Museum Processed by: Paul McJones with the aid of fellow volunteers John Dobyns and Randall Neff Date Completed: 2010 Encoded by: Sara Chabino Lott © 2011 Computer History Museum. All rights reserved. Descriptive Summary Title: Guide to the Herbert Stoyan collection on LISP programming Dates: 1955-2001 Bulk Dates: 1957-1990 Collection number: X5687.2010 Collector: Stoyan, Herbert Collection Size: 105 linear feet160 boxes Repository: Computer History Museum Mountain View, CA 94043 Abstract: The Herbert Stoyan collection on LISP programming contains materials documenting the origins, evolution, and use of the LISP programming language and many of its applications in artificial intelligence. Stoyan collected these materials during his career as a researcher and professor, beginning in the former German Democratic Republic (Deutsche Demokratische Republik) and moving to the Federal Republic of Germany (Bundesrepublik Deutschland) in 1981. Types of material collected by Stoyan include memoranda, manuals, technical reports, published and unpublished papers, source program listings, computer media (tapes and flexible diskettes), promotional material, and correspondence. The collection also includes manuscripts of several books written by Stoyan and a small quantity of his personal papers.
    [Show full text]
  • Maclisp Extensions I Table of Contents , Table of Contents
    MacHsp Extensions July 1981 Alan Bawden Glenn S. Burke Carl W. Hoffman This report describes research done at the Laboratory for Computer Science of the Massachusetts Institute of Technology. Support for this research was, provided in part by N~tional Institutes of Health grant number 1 POI LM 03374-03 from the National Library of Medicine, the Advanced Research Projects Agency of the Department of Defense under Office of Naval Research Contract numbers N00014-75-C-0661 and N00014-77-C-0641, the National Aeronautics and Space Administration under grant NSG 1323, the U. S. Department of Energy under grant ET-78-C-02- 4687, and the U. S. Air Force under grant F49620-79-C-020. " MASSACHUSETTS INSTITUTE OF TECHNOLOGY LABORATORY "FOR COMPUTER SCIENCE CAMURIDGE MASSACHUSf.:11'S 02139 M Abstract 'This document describes a common subset of selected facilities available in Maclisp "and its derivatives: PDP-IO and Multics MC\c1isp, Lisp Machine Lisp (Zetalisp), and NIL. The object of this document is to aid people in writing code which can run compatibly in more than one of these environments. 1. 1 1 2. Acknowledgements ~3. , " Much of the documentation presented here is drawn from pre-existing sources and modified to 4. be presentable in this context The documentation on sharpsign is derived from that written by Richard S. Lamson as a ~1ultics online help segment. The descriptions of backquote and defstruct s. are derived from existing online documentation. The documentation on fonnat shares some 6. portions with the Lisp Machine Manual; text has been exchanged in both directions.
    [Show full text]
  • The UNIX- HATERS Handbook
    The UNIX- HATERS Handbook The UNIX- HATERS Handbook “Two of the most famous products of Berkeley are LSD and Unix. I don’t think that is a coincidence.” Edited by Simson Garfinkel, Daniel Weise, and Steven Strassmann ® PROGRAMMERS IDG Illustrations by John Klossner BOOKS PRESS iv IDG Books Worldwide, Inc. An International Data Group Company San Mateo, California • Indianapolis, Indiana • Boston, Massachusetts The UNIX-HATERS Handbook Published by IDG Books Worldwide, Inc. An International Data Group Company 155 Bovet Road, Suite 310 San Mateo, CA 94402 Copyright 1994 by IDG Books Worldwide. All rights reserved. No part of this book (including interior design, cover design, and illustrations) may be reproduced or transmitted in any form, by any means, (electronic, photocopying, recording, or otherwise) without the prior written permission of the publisher. ISBN 1-56884-203-1 Printed in the United States of America First Printing, May, 1994 10 9 8 7 6 5 4 3 2 1 Distributed in the United States by IDG Books Worldwide, Inc. Distributed in Canada by Macmillan of Canada, a Division of Canada Publishing Corporation; by Computer and Technical Books in Miami, Florida, for South America and the Caribbean; by Longman Singapore in Singapore, Malaysia, Thailand, and Korea; by Toppan Co. Ltd. in Japan; by Asia Computerworld in Hong Kong; by Woodslane Pty. Ltd. in Australia and New Zealand; and by Transword Publishers Ltd. in the U.K. and Europe. For information on where to purchase IDG’s books outside the U.S., contact Christina Turner at 415-312-0633. For information on translations, contact Marc Jeffrey Mikulich, Foreign Rights Manager, at IDG Books Worldwide; FAX number: 415-358-1260.
    [Show full text]
  • GNU Emacs Manual
    GNU Emacs Manual GNU Emacs Manual Fourteenth Edition, Updated for Emacs Version 21.3. Richard Stallman Copyright c 1985, 1986, 1987, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc. Fourteenth Edition Updated for Emacs Version 21.3, March 2002 ISBN 1-882114-06-X Published by the Free Software Foundation 59 Temple Place, Suite 330 Boston, MA 02111-1307 USA Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with the Invariant Sec- tions being \The GNU Manifesto", \Distribution" and \GNU GENERAL PUBLIC LICENSE", with the Front-Cover texts being \A GNU Manual," and with the Back-Cover Texts as in (a) below. A copy of the license is included in the section entitled \GNU Free Documentation License." (a) The FSF's Back-Cover Text is: \You have freedom to copy and modify this GNU Manual, like GNU software. Copies published by the Free Software Foundation raise funds for GNU development." Cover art by Etienne Suvasa. Preface 1 Preface This manual documents the use and simple customization of the Emacs editor. The reader is not expected to be a programmer; simple customiza- tions do not require programming skill. But the user who is not interested in customizing can ignore the scattered customization hints. This is primarily a reference manual, but can also be used as a primer. For complete beginners, it is a good idea to start with the on-line, learn-by-doing tutorial, before reading the manual.
    [Show full text]