%%% -*-BibTeX-*-
%%% ====================================================================
%%% BibTeX-file{
%%% author = "Nelson H. F. Beebe",
%%% version = "2.29",
%%% date = "13 June 2009",
%%% time = "11:36:16 MDT",
%%% filename = "gnu.bib",
%%% address = "University of Utah
%%% Department of Mathematics, 110 LCB
%%% 155 S 1400 E RM 233
%%% Salt Lake City, UT 84112-0090
%%% USA",
%%% telephone = "+1 801 581 5254",
%%% FAX = "+1 801 581 4148",
%%% URL = "http://www.math.utah.edu/~beebe",
%%% checksum = "19625 18346 85361 787534",
%%% email = "beebe at math.utah.edu, beebe at acm.org,
%%% beebe at computer.org (Internet)",
%%% codetable = "ISO/ASCII",
%%% keywords = "bibliography; BibTeX; FSF; Free Software
%%% Foundation; GNU; gcc (GNU Compiler
%%% Collection); g++; gawk; gimp; gnome; gnat",
%%% license = "public domain",
%%% supported = "yes",
%%% docstring = "This is a bibliography of publications about
%%% the GNU (Gnu's Not Unix) system. It includes
%%% coverage of emacs, gawk, gcc, g++, and
%%% other GNU software tools. It also includes
%%% some early references to TECO, the
%%% implementation language on the DEC PDP-10
%%% (1974--1990) of the first Emacs, and free
%%% software and open source software. It does
%%% NOT cover GNU/Linux, one of the kernels of
%%% the GNU operating system; that subject is
%%% covered in a companion bibliography,
%%% linux.bib.
%%%
%%% At version 2.29, the year coverage looked
%%% like this:
%%%
%%% 1960 ( 1) 1977 ( 2) 1994 ( 59)
%%% 1961 ( 0) 1978 ( 1) 1995 ( 46)
%%% 1962 ( 0) 1979 ( 1) 1996 ( 20)
%%% 1963 ( 0) 1980 ( 7) 1997 ( 24)
%%% 1964 ( 0) 1981 ( 8) 1998 ( 16)
%%% 1965 ( 0) 1982 ( 7) 1999 ( 38)
%%% 1966 ( 0) 1983 ( 1) 2000 ( 37)
%%% 1967 ( 0) 1984 ( 8) 2001 ( 49)
%%% 1968 ( 0) 1985 ( 11) 2002 ( 37)
%%% 1969 ( 1) 1986 ( 7) 2003 ( 48)
%%% 1970 ( 0) 1987 ( 17) 2004 ( 47)
%%% 1971 ( 1) 1988 ( 28) 2005 ( 38)
%%% 1972 ( 0) 1989 ( 24) 2006 ( 7)
%%% 1973 ( 0) 1990 ( 34) 2007 ( 9)
%%% 1974 ( 1) 1991 ( 38) 2008 ( 4)
%%% 1975 ( 2) 1992 ( 50) 2009 ( 1)
%%% 1976 ( 0) 1993 ( 48)
%%% 19xx ( 4)
%%% 20xx ( 2)
%%%
%%% Article: 238
%%% Book: 167
%%% InCollection: 1
%%% InProceedings: 121
%%% Manual: 45
%%% MastersThesis: 16
%%% Misc: 58
%%% Periodical: 4
%%% PhdThesis: 2
%%% Proceedings: 78
%%% TechReport: 54
%%%
%%% Total entries: 784
%%%
%%% The initial draft of this bibliography was
%%% derived almost entirely from the OCLC
%%% Article1st, Contents1st, Papers1st,
%%% Proceedings, and WorldCat databases.
%%% Additions were then made from all of the
%%% bibliographies in the TeX User Group
%%% collection, from the Uncover library
%%% database, from the University of California
%%% Melvyl catalog, from the U.S. Library of
%%% Congress catalog, from the IEEE INSPEC
%%% 1989--1995 CD-ROM database, from
%%% bibliographies in the author's personal
%%% files, and from the computer science
%%% bibliography collection on ftp.ira.uka.de in
%%% /pub/bibliography to which many people of
%%% have contributed. The snapshot of this
%%% collection was taken on 5-May-1994, and it
%%% consists of 441 BibTeX files, 2,672,675
%%% lines, 205,289 entries, and 6,375
%%% <at>String{} abbreviations, occupying 94.8MB
%%% of disk space.
%%%
%%% Regrettably, the OCLC databases often do not
%%% record final page numbers of journal
%%% articles, so there are many page ranges of
%%% the form 123--?? in this bibliography.
%%%
%%% Numerous errors in the sources noted above
%%% have been corrected. Spelling has been
%%% verified with the UNIX spell and GNU ispell
%%% programs using the exception dictionary
%%% stored in the companion file with extension
%%% .sok.
%%%
%%% BibTeX citation tags are uniformly chosen
%%% as name:year:abbrev, where name is the
%%% family name of the first author or editor,
%%% year is a 4-digit number, and abbrev is a
%%% 3-letter condensation of important title
%%% words. Citation tags were automatically
%%% generated by software developed for the
%%% BibNet Project.
%%%
%%% In this bibliography, entries are sorted in
%%% year order, using bibsort -byyear, to
%%% facilitate locating most recent work.
%%%
%%% The checksum field above contains a CRC-16
%%% checksum as the first value, followed by the
%%% equivalent of the standard UNIX wc (word
%%% count) utility output of lines, words, and
%%% characters. This is produced by Robert
%%% Solovay's checksum utility.",
%%% }
%%% ====================================================================
@Preamble{"\ifx \POSTSCRIPT \undefined \def \POSTSCRIPT {{Post\-Script}} \fi"}
%%% ====================================================================
%%% Acknowledgement abbreviations:
@String{ack-bc = "S. Bart Childs,
e-mail: \path|bart@cs.tamu.edu|"}
@String{ack-nhfb = "Nelson H. F. Beebe,
University of Utah,
Department of Mathematics, 110 LCB,
155 S 1400 E RM 233,
Salt Lake City, UT 84112-0090, USA,
Tel: +1 801 581 5254,
FAX: +1 801 581 4148,
e-mail: \path|beebe@math.utah.edu|,
\path|beebe@acm.org|,
\path|beebe@computer.org| (Internet),
URL: \path|http://www.math.utah.edu/~beebe/|"}
@String{ack-njh = "Nick Higham,
e-mail: \path|higham@vtx.ma.man.ac.uk|"}
@String{ack-sk = "Samuel Ko,
e-mail: \path|kko@sfu.ca|"}
%%% ====================================================================
%%% Institution abbreviations:
@String{inst-CLSC = "College of Science Computer, University of
Utah"}
@String{inst-CLSC:adr = "Salt Lake City, UT 84112, USA"}
@String{inst-CSC = "Center for Scientific Computing and
Department of Mathematics, University of
Utah"}
@String{inst-CSC:adr = "Salt Lake City, UT 84112, USA"}
@String{inst-MIT = "Massachusetts Institute of Technology"}
@String{inst-MIT-AI = "Massachusetts Institute of Technology,
Artificial Intelligence Laboratory"}
@String{inst-MIT-AI:adr = "Cambridge, MA, USA"}
@String{inst-MIT-EECS = "Massachusetts Institute of Technology,
Electrical Engineering and Computer Science
Department"}
@String{inst-MIT-EECS:adr = "Cambridge, MA, USA"}
@String{inst-MIT:adr = "Cambridge, MA, USA"}
@String{inst-U-MARYLAND = "University of Maryland"}
@String{inst-U-MARYLAND:adr = "College Park, MD, USA"}
%%% ====================================================================
%%% Journal abbreviations:
@String{j-ADA-USER-J = "Ada User Journal"}
@String{j-AI-EXPERT = "AI Expert"}
@String{j-ANRITSU-TECHNICAL-BULL = "Anritsu Technical Bulletin"}
@String{j-BULL-SCI-ASSOC-INGEN-ELECTRICIENS-MONTEFIORE = "Bulletin
Scientifique de l'Association des
Ing{\'e}nieurs Electriciens sortis de
l'Institut Electrotechnique Montefiore"}
@String{j-BYTE = "BYTE Magazine"}
@String{j-C-PLUS-PLUS-REPORT = "C++ Report"}
@String{j-CACM = "Communications of the ACM"}
@String{j-CCCUJ = "C/C++ Users Journal"}
@String{j-COMP-ARCH-NEWS = "ACM SIGARCH Computer Architecture News"}
@String{j-COMP-GEOSCI = "Computers and Geosciences"}
@String{j-COMP-GRAPHICS = "Computer Graphics"}
@String{j-COMP-HUM = "Computers and the Humanities"}
@String{j-COMP-PHYSICS = "Computers in physics"}
@String{j-COMP-STANDARDS-INTERFACES = "Computer Standards and Interfaces"}
@String{j-COMP-SYS = "Computing Systems"}
@String{j-COMPUTER = "Computer"}
@String{j-CPE = "Concurrency, practice and experience"}
@String{j-CUJ = "C Users Journal"}
@String{j-DDJ = "Dr. Dobb's Journal of Software Tools"}
@String{j-EDN = "EDN"}
@String{j-EMBED-SYS-PROG = "Embedded Systems Programming"}
@String{j-EMBEDDED-LINUX-J = "Embedded Linux Journal"}
@String{j-EPODD = "Electronic
Pub\-lish\-ing\emdash{}Orig\-i\-na\-tion,
Dissemination, and Design"}
@String{j-HYPERMEDIA = "Hypermedia"}
@String{j-IBM-JRD = "IBM Journal of Research and Development"}
@String{j-IBM-SYS-J = "IBM Systems Journal"}
@String{j-IEEE-SEC-PRIV = "IEEE Security \& Privacy"}
@String{j-IEEE-SOFTWARE = "IEEE Software"}
@String{j-INFO-DECISION-TECHNOLOGIES = "Information and Decision Technologies"}
@String{j-INFO-SOFTWARE-TECH = "Information and Software Technology"}
@String{j-INFORMATIK-INFORMATIONEN-REPORTE = "Informatik, Informationen
Reporte"}
@String{j-INT-J-MAN-MACHINE-STUDIES = "International Journal of Man-Machine
Studies"}
@String{j-INT-J-MINI-MICROCOMPUTERS = "International Journal of Mini and
Microcomputers"}
@String{j-INT-J-SOFTW-TOOLS-TECHNOL-TRANSFER = "International Journal on
Software Tools for Technology Transfer (STTT)"}
@String{j-J-ACM = "Journal of the ACM"}
@String{j-J-AM-SOC-INF-SCI = "Journal of the American Society for
Information Science"}
@String{j-J-APPL-ECONOMETRICS = "Journal of Applied Econometrics"}
@String{j-J-MICROCOMPUT-APPL = "Journal of Microcomputer Applications"}
@String{j-J-VIS-COMP-ANIMATION = "Journal of Visualization and Computer
Animation"}
@String{j-JAVAWORLD = "JavaWorld: IDG's magazine for the
Java community"}
@String{j-JOHO-SHORI = "Joho-Shori (J. Information Processing Soc.
Japan)"}
@String{j-LINUX-J = "Linux Journal"}
@String{j-LOGIN = ";login: the USENIX Association newsletter"}
@String{j-MICROPROC-MICROPROG = "Microprocessing and Microprogramming"}
@String{j-NAMS = "Notices of the American Mathematical Society"}
@String{j-NETWORK-WORLD = "Network World"}
@String{j-OPER-SYS-REV = "Operating Systems Review"}
@String{j-PERFORM-COMPUT = "Performance Computing"}
@String{j-PROC-SPIE = "Proceedings of the SPIE --- The
International Society for Optical
Engineering"}
@String{j-QUEUE = "ACM Queue: Tomorrow's Computing Today"}
@String{j-RELIABLE-COMPUTING = "Reliable Computing = Nadezhnye vychisleniia"}
@String{j-SIGADA-LETTERS = "ACM SIGADA Ada Letters"}
@String{j-SIGPLAN = "ACM SIG{\-}PLAN Notices"}
@String{j-SIGSOFT-SOFTWARE-ENG-NOTES = "SIGSOFT Software Engineering Notes"}
@String{j-SOFTWARE-MAG = "Software Magazine"}
@String{j-SPE = "Soft{\-}ware\emdash Prac{\-}tice and
Experience"}
@String{j-SUNEXPERT = "SunExpert Magazine"}
@String{j-TECHNIQUE-SCI-INFORMATIQUES = "Technique et Science Informatiques"}
@String{j-TECS = "ACM Transactions on Embedded Computing
Systems"}
@String{j-TEXNIQUES = "{\TeX}{\-}niques, Publications for the
{\TeX} community"}
@String{j-TOIS = "ACM Transactions on Information Systems"}
@String{j-TOMS = "ACM Transactions on Mathematical Software"}
@String{j-TOPLAS = "ACM Transactions on Programming Languages
and Systems"}
@String{j-TRANS-INFO-PROCESSING-SOC-JAPAN = "Transactions of the Information
Processing Society of Japan"}
@String{j-TRANS-SOC-COMP-SIM = "Transactions of the Society for Computer
Simulation"}
@String{j-TUGboat = "TUGboat"}
@String{j-UNIX-REVIEW = "UNIX review"}
@String{j-UNIX-WORLD = "UNIX/world"}
@String{j-VAX-PROF = "The VAX professional"}
@String{j-X-J = "{The {X} Journal: Computing Technology with
the {X Window System}}"}
%%% ====================================================================
%%% Publisher abbreviations:
@String{pub-ACM = "ACM Press"}
@String{pub-ACM:adr = "New York, NY 10036, USA"}
@String{pub-APRESS = "Apress"}
@String{pub-APRESS:adr = "Berkeley, CA, USA"}
@String{pub-AW = "Ad{\-d}i{\-s}on-Wes{\-l}ey"}
@String{pub-AW:adr = "Reading, MA, USA"}
@String{pub-CAMBRIDGE = "Cambridge University Press"}
@String{pub-CAMBRIDGE:adr = "Cambridge, UK"}
@String{pub-CMP-BOOKS = "CMP Books"}
@String{pub-CMP-BOOKS:adr = "6600 Silacci Way, Gilroy, CA 95020, USA"}
@String{pub-CORIOLIS = "Coriolis Group Books"}
@String{pub-CORIOLIS:adr = "Scottsdale, AZ, USA"}
@String{pub-DEC = "Digital Equipment Corporation"}
@String{pub-DEC:adr = "Maynard, MA, USA"}
@String{pub-ELS = "Elsevier"}
@String{pub-ELS:adr = "Amsterdam, The Netherlands"}
@String{pub-EUROPEN = "EurOpen"}
@String{pub-EUROPEN:adr = "Buntingford, Herts, UK"}
@String{pub-FSF = "{Free Software Foundation, Inc.}"}
@String{pub-FSF:adr = "51 Franklin Street, Fifth Floor, Boston,
MA 02110-1301, USA, Tel: (617) 876-3296"}
@String{pub-GNU-PRESS = "GNU Press"}
@String{pub-GNU-PRESS:adr = "Boston, MA, USA"}
@String{pub-HAYDEN = "Hayden Books"}
@String{pub-HAYDEN:adr = "4300 West 62nd Street,
Indianapolis, IN 46268, USA"}
@String{pub-IDG-WORLDWIDE = "I D G Books Worldwide"}
@String{pub-IDG-WORLDWIDE:adr = "Indianapolis, IN, USA"}
@String{pub-IEEE = "IEEE Computer Society Press"}
@String{pub-IEEE:adr = "1109 Spring Street, Suite 300, Silver
Spring, MD 20910, USA"}
@String{pub-INTERNET-SOCIETY = "Internet Society"}
@String{pub-INTERNET-SOCIETY:adr = "Reston, VA, USA"}
@String{pub-IOS = "IOS Press"}
@String{pub-IOS:adr = "Amsterdam, The Netherlands"}
@String{pub-KLUWER = "Kluwer Academic Publishers Group"}
@String{pub-KLUWER:adr = "Norwell, MA, USA, and Dordrecht,
The Netherlands"}
@String{pub-LEARNED-INF = "Learned Information"}
@String{pub-LEARNED-INF:adr = "Medford, NJ, USA"}
@String{pub-MANNING = "Manning Publications"}
@String{pub-MANNING:adr = "Greenwich, CT, USA"}
@String{pub-MCGRAW-HILL = "Mc{\-}Graw-Hill"}
@String{pub-MCGRAW-HILL:adr = "New York, NY, USA"}
@String{pub-MF = "Miller Freeman Publications"}
@String{pub-MF:adr = "San Francisco, CA, USA"}
@String{pub-MIT = "MIT Press"}
@String{pub-MIT:adr = "Cambridge, MA, USA"}
@String{pub-NETWORK-THEORY = "Network Theory Ltd."}
@String{pub-NETWORK-THEORY:adr = "Bristol, UK"}
@String{pub-NEW-RIDERS = "New Riders Publishing"}
@String{pub-NEW-RIDERS:adr = "Carmel, IN, USA"}
@String{pub-NH = "North-Holland Publishing Co."}
@String{pub-NH:adr = "Amsterdam, The Netherlands"}
@String{pub-NO-STARCH = "No Starch Press"}
@String{pub-NO-STARCH:adr = "San Francisco, CA, USA"}
@String{pub-OSBORNE-MCGRAW-HILL = "Osborne\slash Mc{\-}Graw-Hill"}
@String{pub-OSBORNE-MCGRAW-HILL:adr = "Berkeley, CA, USA"}
@String{pub-ORA = "O'Reilly \& Associates, Inc."}
@String{pub-ORA:adr = "981 Chestnut Street, Newton, MA 02164, USA"}
@String{pub-OSBORNE = "Osborne/McGraw-Hill"}
@String{pub-OSBORNE:adr = "Berkeley, CA, USA"}
@String{pub-PERSEUS = "Perseus Publishers"}
@String{pub-PERSEUS:adr = "Cambridge, MA, USA"}
@String{pub-PH = "Pren{\-}tice-Hall"}
@String{pub-PH:adr = "Englewood Cliffs, NJ 07632, USA"}
@String{pub-PRIMA = "Prima Publishing"}
@String{pub-PRIMA:adr = "Roseville, CA, USA"}
@String{pub-QUE = "Que Corporation"}
@String{pub-QUE:adr = "Indianapolis, IN, USA"}
@String{pub-SAMS-NET = "Sams.net Pub."}
@String{pub-SAMS-NET:adr = "Indianapolis, IN, USA"}
@String{pub-SIAM = "Society for Industrial and Applied
Mathematics"}
@String{pub-SIAM:adr = "Philadelphia, PA, USA"}
@String{pub-SPIE = "SPIE Optical Engineering Press"}
@String{pub-SPIE:adr = "Bellingham, WA, USA"}
@String{pub-SSC = "Specialized Systems Consultants"}
@String{pub-SSC:adr = "P.O. Box 55549, Seattle, WA 98155"}
@String{pub-STUDENTLITTERATUR = "Studentlitteratur"}
@String{pub-STUDENTLITTERATUR:adr = "Lund, Sweden"}
@String{pub-SV = "Springer Verlag"}
@String{pub-SV:adr = "Berlin, Germany~/ Heidelberg, Germany~/
London, UK~/ etc."}
@String{pub-SYBEX = "Sybex"}
@String{pub-SYBEX:adr = "2021 Challenger Driver, Suite 100,
Alameda, CA 94501, USA"}
@String{pub-USENIX = "USENIX Association"}
@String{pub-USENIX:adr = "Berkeley, CA, USA"}
@String{pub-VOGEL = "Vogel Verlag"}
@String{pub-VOGEL:adr = "Postfach 67 40, D-8700 W{\"u}rzburg,
Germany"}
@String{pub-WILEY = "Wiley"}
@String{pub-WILEY:adr = "New York, NY, USA"}
@String{pub-WORLD-SCI = "World Scientific Publishing Co."}
@String{pub-WORLD-SCI:adr = "Singapore; Philadelphia, PA, USA; River
Edge, NJ, USA"}
@String{pub-WROX = "Wrox Press"}
@String{pub-WROX:adr = "Chicago, IL, USA"}
@String{pub-YGGDRASIL = "Yggdrasil Computing, Inc."}
@String{pub-YGGDRASIL:adr = "Berkeley, CA, USA"}
%%% ====================================================================
%%% Series abbreviations:
@String{ser-LNAI = "Lecture Notes in Artificial Intelligence"}
@String{ser-LNCS = "Lecture Notes in Computer Science"}
@String{ser-SIGPLAN = "ACM SIG{\-}PLAN Notices"}
%%% ====================================================================
%%% Bibliography entries:
@Article{Galler:1960:LEC,
author = "Bernard A. Galler",
title = "Letters to the {Editor}: Cost of software",
journal = j-CACM,
volume = "3",
number = "4",
pages = "A12--A12",
month = apr,
year = "1960",
CODEN = "CACMA2",
ISSN = "0001-0782",
bibdate = "Fri Nov 25 18:19:26 MST 2005",
bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/cacm1960.bib;
http://www.acm.org/pubs/contents/journals/cacm/",
acknowledgement = ack-nhfb,
remark = "From the letter: ``... it is clear that what is being
charged for is the development of the program, and
while I am particularly unhappy that it comes from a
university, I believe it is damaging to the whole
profession. There isn't a 704 installation that hasn't
directly benefited from the free exchange of programs
made possible by the distribution facilities of SHARE.
If we start to sell our programs, this will set very
undesirable precedents.''",
}
%%% The `Gnu soup' book has nothing to do with the GNU Project, but I found
%%% the title amusing, and it might be fun to read some time!
@Book{Fischer:1969:GS,
author = "Heinz Eduard Fischer",
title = "Gnu soup",
publisher = "Printed for Fred Cogswell",
address = "Fiddlehead Poetry Books",
pages = "48",
year = "1969",
LCCN = "PR6056.I77 G6",
bibdate = "Thu Oct 31 08:43:55 MST 1996",
note = "Limited ed. of 500 copies. Poems.",
acknowledgement = ack-nhfb,
}
@Article{Wilkinson:1971:SCN,
author = "J. H. Wilkinson",
title = "Some Comments from a Numerical Analyst",
journal = j-J-ACM,
volume = "18",
number = "2",
pages = "137--147",
month = apr,
year = "1971",
CODEN = "JACOAH",
DOI = "http://doi.acm.org/10.1145/321637.321638",
ISSN = "0004-5411",
bibdate = "Sat Dec 10 15:00:46 1994",
acknowledgement = ack-nhfb,
remark = "This is the 1970 ACM Turing Award Lecture. Subsequent
lectures are published in {\em Communications of the
ACM}. Wilkinson comments ``It is perhaps salutary to be
reminded that as early as 1946 Turing had considered
the possibility of working with both interval and
significant digit arithmetic and the report recalled
forgotten conversations, not to mention heated
arguments, which we had on this topic.'' He also says
``I think it is of vital importance that all the work
that has been expended on the development of
satisfactory algorithms should be made fully available
to the people who need to use it. I would go further
than this and claim that it is a social duty to see
that this is achieved.''",
}
@Manual{DEC:1974:TUG,
title = "{TECO} user's guide",
organization = pub-DEC,
address = pub-DEC:adr,
pages = "v + 61 + 30",
year = "1974",
bibdate = "Wed Oct 30 19:15:57 MST 1996",
acknowledgement = ack-nhfb,
annote = "Order no.: DEC-11-UTECA-A-D. Operating system and
version: RT-11 V03; software version: TECO V28.",
keywords = "Text editors (Computer programs).",
}
@Manual{DEC:1975:DSI,
title = "{DEC} system 10: introduction to {TECO} ({Text Editor
and Corrector})",
organization = pub-DEC,
address = pub-DEC:adr,
pages = "34",
year = "1975",
bibdate = "Wed Oct 30 19:15:57 MST 1996",
acknowledgement = ack-nhfb,
keywords = "Electronic digital computers --- Handbooks, manuals,
etc.",
}
@Manual{DEC:1975:TEC,
title = "{Text Editor and Corrector} program: programmer's
reference manual",
organization = pub-DEC,
address = pub-DEC:adr,
edition = "Revised",
pages = "various",
year = "1975",
bibdate = "Wed Oct 30 19:15:57 MST 1996",
acknowledgement = ack-nhfb,
annote = "This manual reflects the software version as of
version 23B of TECO. DEC-10-UTPRA-A-D.",
keywords = "Text editors (Computer programs); TECO (Computer
program); DECsystem-10 (Computer)",
}
@Manual{Harvard:1977:HTM,
title = "{HRSTS Teco} manual",
organization = "{Harvard University} and {Harvard-Radcliffe Student
Timesharing System}",
address = "Cambridge, MA, USA",
edition = "Second",
pages = "61",
year = "1977",
bibdate = "Tue Dec 29 08:26:00 1998",
acknowledgement = ack-nhfb,
keywords = "Time-sharing computer systems.",
}
@Manual{UTACC:1977:TPR,
title = "{TECO} pocket reference list: {DECsystem-10}",
organization = "{University of Texas at Austin. Computation Center}",
address = "Austin, TX, USA",
pages = "8",
year = "1977",
bibdate = "Wed Oct 30 19:15:57 MST 1996",
series = "Pocket reference list; CCRL-7 University of Texas at
Austin. Computation Center",
acknowledgement = ack-nhfb,
annote = "Tx Doc no.: Z, UA268.7, C739rl no. 7 Cover title.",
keywords = "DEC-10 (Computer)",
}
@TechReport{Ciccarelli:1978:IEE,
author = "Eugene Charles Ciccarelli",
title = "An introduction to the {EMACS} editor",
type = "AI memo",
number = "447",
institution = inst-MIT-AI,
address = inst-MIT-AI:adr,
pages = "23",
year = "1978",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
}
@TechReport{Stallman:1979:EEC,
author = "Richard M. Stallman",
title = "{EMACS}: The Extensible, Customizable,
Self-Documenting Display Editor",
type = "Report",
number = "AI Memo 519, 519A",
institution = inst-MIT-AI,
address = inst-MIT-AI:adr,
pages = "29",
month = jun,
year = "1979",
bibsource = "Ai/mit.aitr.aim.bib, Ai/lisp.bib,
Ai/mit.ai.memos.bib",
abstract = "EMACS is a display editor which is implemented in an
interpreted high level language. This allows users to
extend the editor by replacing parts of it, to
experiment with alternative command languages, and to
share extensions which are generally useful. The ease
of extension has contributed to the growth of a large
set of useful features. This paper describes the
organization of the EMACS system, emphasizing the way
in which extensibility is achieved and used.",
adnum = "AD-A078064",
keywords = "display, editor, extensible, interactive,
self-documenting, LISP",
reference = "Revised March 1981.",
}
@Manual{DEC:1980:PTU,
title = "{PDP-11 TECO} user's guide",
organization = pub-DEC,
address = pub-DEC:adr,
pages = "iii + 150",
year = "1980",
bibdate = "Wed Oct 30 19:15:57 MST 1996",
acknowledgement = ack-nhfb,
annote = "Order no. DEC-11-UTECA-B-D. This document describes
the operating procedures for the TECO (Text Editor and
Corrector) program. TECO is distributed with DIGITAL
Operating systems, but it is unsupported by DIGITAL;
TECO is Category C software. Supersedes
DEC-11-RTECA-A-D. Software version: TECO-11 v36;
TECO-10 v3; TECO-8 v7.",
keywords = "PDP-11 (Computer) --- Programming.; TECO (Computer
program)",
}
@Manual{DEC:1980:VVP,
title = "[{VAX\slash VMS} Programmming card and {PDP-11} {TECO}
user's guide]",
organization = pub-DEC,
address = pub-DEC:adr,
pages = "????",
year = "1980",
bibdate = "Wed Oct 30 19:15:57 MST 1996",
acknowledgement = ack-nhfb,
annote = "Order no. QLYY2-GZ4.4 and
DEC-11-UTECA-B-D,AV-D827C-TE. This document describes
the operating procedures for the TECO (Text Editor and
Corrector) program. TECO is distributed with DIGITAL
Operating systems, but it is unsupported by DIGITAL;
TECO is Category C software. Supersedes
DEC-11-RTECA-A-D. Software version: TECO-11 v36;
TECO-10 v3; TECO-8 v7. [1] PDP-11 TECO user's guide.
[2] VAX-11 programming card.",
keywords = "PDP-11 (Computer) --- Programming.; TECO (Computer
program); VAX-11 (Computer) --- Programming.",
}
@MastersThesis{Finseth:1980:TPTa,
author = "Craig A. Finseth",
title = "Theory and practice of text editors, or, {A} cookbook
for an Emacs",
type = "Thesis (B.S.)",
school = "M.I.T., Department of Electrical Engineering and
Computer Science",
address = "Cambridge, MA, USA",
pages = "103",
year = "1980",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
note = "Supervised by David P. Reed.",
acknowledgement = ack-nhfb,
keywords = "Programming (Electronic computers) --- Handbooks,
manuals, etc.",
}
@TechReport{Finseth:1980:TPTb,
author = "Craig A. Finseth",
title = "Theory and practice of text editors or a cookbook for
an Emacs",
type = "Technical memoranda",
number = "165",
institution = "Massachusetts Institute of Technology, Laboratory for
Computer Science",
address = "Cambridge, MA, USA",
pages = "106",
year = "1980",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
annote = "Originally presented as the author's thesis, (B.S.) in
the M.I.T. Dept. of Electrical Engineering and Computer
Science, 1980.",
keywords = "Programming (Electronic computers) --- Handbooks,
manuals, etc.",
}
@InProceedings{Greenberg:1980:PCM,
author = "B. S. Greenberg",
booktitle = "Conference Record of the 1980 LISP Conference,
Stanford University",
title = "Prose and {CONS} --- {Multics Emacs}: {A} Commercial
Text-Processing System in {LISP}",
publisher = pub-ACM,
address = pub-ACM:adr,
year = "1980",
bibsource = "Misc/Functional.bib",
keywords = "functional Text Processing",
}
@TechReport{Stallman:1980:EMI,
author = "Richard M. Stallman",
title = "{EMACS} Manual for {ITS} Users",
number = "AI Memo 554",
institution = inst-MIT,
address = inst-MIT:adr,
pages = "218",
month = jun,
year = "1980",
bibsource = "Ai/mit.aitr.aim.bib",
adnum = "AD-A093186",
reference = "Revised April 1981.",
}
@TechReport{Stallman:1980:EMT,
author = "Richard Stallman",
title = "{EMACS} manual for {TWENEX} users: a reference manual
for the extensible, customizable, self-documenting
real-time display editor",
type = "AI memo",
number = "555",
institution = inst-MIT-AI,
address = inst-MIT-AI:adr,
pages = "iv + 203",
year = "1980",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
annote = "Support for the laboratory's research is provided in
part by the Advanced Research Projects Agency of the
Dept. of Defense under Office of Naval Research
contract",
}
@TechReport{Abelson:1981:CNC,
author = "H. Abelson and R. M. Fano and G. J. Sussman",
title = "Course Notes {CS} 6.001: Structure and Interpretation
of Computer Programs, (Chapter 1+2, Guide to {DEC}-20,
{EMACS}-Intr., Intr. to {SCHEME}, {SCHEME}-Manual,
Chapter 3--7, Problemsets 1--9, Quiz 1+2, Final
Exam.)",
type = "Report",
institution = inst-MIT-EECS,
address = inst-MIT-EECS:adr,
year = "1981",
bibsource = "Ai/lisp.bib",
keywords = "LISP",
}
@TechReport{Gosling:1981:UE,
author = "James Gosling",
title = "{UNIX EMACS}",
type = "Report",
institution = inst-MIT-AI,
address = inst-MIT-AI:adr,
month = dec,
year = "1981",
bibsource = "Ai/lisp.bib",
keywords = "UNIX (Computer operating system) --- Handbooks,
manuals, etc.; LISP",
}
@TechReport{Stallman:1981:EECa,
author = "Richard M. Stallman",
title = "{EMACS}: the extensible, customizable self-documenting
display editor",
type = "AI memo",
number = "519a",
institution = inst-MIT-AI,
address = inst-MIT-AI:adr,
pages = "28",
month = mar,
year = "1981",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
annote = "Advanced Research Projects Agency, Dept. of Defense,
ONR.",
}
@InProceedings{Stallman:1981:EECb,
author = "R. M. Stallman",
title = "{EMACS}: the extensible customizable self-documenting
display editor",
crossref = "Abrahams:1981:TMA",
pages = "147--156",
year = "1981",
bibdate = "Sat Aug 13 17:16:20 MDT 1994",
acknowledgement = ack-nhfb,
keywords = "languages",
subject = "B.4.2 Hardware, INPUT/OUTPUT AND DATA COMMUNICATIONS,
Input/Output Devices, Image display \\ D.4.9 Software,
OPERATING SYSTEMS, Systems Programs and Utilities,
Command and control languages \\ D.2.7 Software,
SOFTWARE ENGINEERING, Distribution and Maintenance,
Extensibility",
}
@TechReport{Stallman:1981:EMTa,
author = "Richard Stallman",
title = "{EMACS} manual for {TWENEX} users: a reference manual
for the extensible, customizable, self-documenting
real-time display editor",
type = "AI memo",
number = "555",
institution = "Massachusetts Institute of Technology, Artificial
Intelligence Laboratory",
address = "Cambridge, MA, USA",
edition = "Revised",
pages = "iv + 236",
month = oct,
year = "1981",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
note = "This manual corresponds to EMACS version 162.",
acknowledgement = ack-nhfb,
annote = "Advanced Research Projects Agency, Dept. of Defense,
ONR.",
}
@TechReport{Stallman:1981:EMTb,
author = "Richard Stallman",
title = "{EMACS} manual for {TOPS}-20 users: a reference manual
for the extensible, customizable, self-documenting
real-time display editor",
type = "AI memo 556",
number = "",
institution = "Massachusetts Institute of Technology, Artificial
Intelligence Laboratory",
address = "Cambridge, MA, USA",
pages = "various",
year = "1981",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
keywords = "EMACS (Computer program); Text editors (Computer
programs); TOPS-20 (Computer system)",
}
@TechReport{Stallman:1981:EMU,
author = "Richard Stallman",
title = "{EMACS} manual for {ITS} users: a reference manual for
the extensible, customizable, self-documenting
real-time display editor",
type = "AI memo 554",
number = "554",
institution = "Massachusetts Institute of Technology, Artificial
Intelligence Laboratory",
address = "Cambridge, MA, USA",
pages = "iv + 224",
year = "1981",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
note = "This manual corresponds to EMACS version 162.",
acknowledgement = ack-nhfb,
}
@TechReport{Abelson:1982:CNC,
author = "H. Abelson and R. M. Fano and G. J. Sussman",
title = "Course Notes {CS} 6.001: Structure and Interpretation
of Computer Programs, (Chapters 1-8, Guide to {DEC}-20,
Intro. to {EMACS}, Intro. to {SCHEME})",
type = "Report",
institution = inst-MIT-EECS,
address = inst-MIT-EECS:adr,
year = "1982",
bibsource = "Ai/lisp.bib",
keywords = "LISP",
}
@Manual{Buck:1982:EP,
author = "Barbara Buck",
title = "{EMACS} primer",
organization = "Prime Computer, Inc.",
address = "Framingham, MA, USA",
pages = "various",
year = "1982",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
annote = "IDR6107. Revision 18.3. This guide documents the
software operation of the Prime Computer and its
supporting systems and utilities at master disk
revision level 18 (rev.18).",
keywords = "Prime computers --- Programming.; EMACS (Computer
program)",
}
@Manual{Buck:1982:ERG,
author = "Barbara Buck",
title = "{EMACS} reference guide",
organization = "Prime Computer, Inc.",
address = "Framingham, MA, USA",
pages = "various",
year = "1982",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
annote = "IDR5026. Revision 18.3. This guide documents the
software operation of the Prime Computer and its
supporting systems and utilities as implemented at
master disk revision level 18 (rev. 18)",
keywords = "Prime computers --- Programming.; EMACS (Computer
program)",
}
@Article{Cohen:1982:TSC,
author = "E. Cohen",
title = "Text-Oriented Structure Commands for Structure
Editors",
journal = j-SIGPLAN,
volume = "17",
number = "11",
pages = "45--49",
month = nov,
year = "1982",
CODEN = "SINODQ",
ISSN = "0362-1340",
bibdate = "Tue Jan 10 10:19:23 1984",
bibsource = "Os/os.bib, Misc/os.bib",
abstract = "The main problems associated with program structure
editors are not inherent and can be solved without
reverting to a textual view point. Cursor movements can
be made more natural by viewing the screen as a 2-D
arrangement of nodes. Expressions can be input to
commands more complex than simple template expansion.
Transformations of program fragments can be
accomplished by an editor which supports matching and
instantiation of subtrees.",
keywords = "editor, structure editor, emacs, Myte",
}
@Manual{DEC:1982:DMS,
title = "Data management systems: {SIG} handout: 1982 Spring
{DECUS} Symposium: May 10--14, 1982, Atlanta, Georgia:
{TECO} sessions",
organization = pub-DEC,
address = pub-DEC:adr,
pages = "55",
year = "1982",
bibdate = "Wed Oct 30 19:15:57 MST 1996",
acknowledgement = ack-nhfb,
annote = "Cover title.",
keywords = "Electronic data processing --- Management ---
Congresses.",
}
@Article{Graham:1982:GCG,
author = "Susan L. Graham and Peter B. Kessler and Marshall K.
Mckusick",
title = "{Gprof}: {A} call graph execution profiler",
journal = j-SIGPLAN,
volume = "17",
number = "6",
pages = "120--126",
month = jun,
year = "1982",
CODEN = "SINODQ",
ISSN = "0362-1340",
bibdate = "Sun Dec 14 09:14:38 MST 2003",
bibsource = "http://portal.acm.org/",
acknowledgement = ack-nhfb,
classification = "C6150C (Compilers, interpreters and other
processors)",
conflocation = "Boston, MA, USA; 23-25 June 1982",
conftitle = "Proceedings of the SIGPLAN '82 Symposium on Compiler
Construction",
corpsource = "Computer Sci. Div., Electrical Engng. and Computer
Sci. Dept., Univ. of California, Berkeley, CA, USA",
keywords = "abstractions; call graph execution; call graph
execution profiler; called routines; compilers; complex
programs; gprof; program compilers; program
processors",
sponsororg = "ACM",
treatment = "P Practical",
}
@TechReport{Phillips:1982:UML,
author = "Richard E. Phillips and Phoebe L. Hauff",
title = "{USGS} Mineralogy Laboratory user's guide to the
{TECO} editing program for the {DEC RT-11} operating
system: (Part {C} of the {USGS} Mineralogy Laboratory
user's guide to the {DEC RT-11} operating system)",
type = "Open-file report",
number = "82-177",
institution = "U.S. Geological Survey",
address = "Denver, CO, USA",
pages = "ii + 39",
year = "1982",
bibdate = "Wed Oct 30 19:15:57 MST 1996",
acknowledgement = ack-nhfb,
keywords = "TECO (Computer program)",
}
@Manual{Gosling:1983:ESE,
author = "James Gosling",
title = "{EMACS} screen editor: version 264",
organization = "UniPress Software, Inc.",
address = "Edison, NJ, USA",
pages = "various",
year = "1983",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
note = "Seven computer disks.",
acknowledgement = ack-nhfb,
}
@Manual{CCA:1984:CEMa,
title = "{CCA EMACS} manual for {UNIX} users",
organization = "Computer Corporation of America",
address = "Cambridge, MA, USA",
edition = "Version 162.43z",
pages = "various",
year = "1984",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
keywords = "UNIX (Computer operating system) --- Handbooks,
manuals, etc.",
}
@Manual{CCA:1984:CEMb,
title = "{CCA EMACS}: manual for {UNIX} users",
organization = "CCA Uniworks",
address = "Cambridge, MA, USA",
edition = "Version 162.45z",
pages = "various",
month = oct,
year = "1984",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
keywords = "Text editors (Computer programs); UNIX (Computer
operating system) --- Handbooks, manuals, etc.",
}
@Manual{Gosling:1984:EUM,
author = "James Gosling",
title = "{Emacs} user's manual",
organization = "Pyramid Technology Corporation",
address = "Mountain View, CA, USA",
edition = "Revision A",
pages = "various",
year = "1984",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
annote = "4100-0012",
}
@TechReport{Mitchell:1984:ISU,
author = "William H. Mitchell",
title = "An {Icon} subsystem for {UNIX} Emacs",
type = "Technical report",
number = "TR 84-8",
institution = "Dept. of Computer Science, The University of Arizona",
address = "Tucson, AZ, USA",
pages = "17",
year = "1984",
bibdate = "Mon Jan 12 12:27:38 1998",
acknowledgement = ack-nhfb,
keywords = "Icon (Computer program language); Text editors
(Computer programs)",
}
@Manual{PyramidTechnology:1984:ERD,
title = "{Emacs} release description",
organization = "Pyramid Technology Corporation",
address = "Mountain View, CA, USA",
edition = "Revision A",
pages = "various",
year = "1984",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
annote = "4100-0013. Release 2.1.",
}
@Manual{SSC:1984:SRC,
author = "{SSC staff}",
title = "{SCC} Reference Cards",
organization = pub-SSC,
address = pub-SSC:adr,
year = "1984--1993",
bibdate = "Wed Sep 29 13:43:45 1993",
bibsource = "Os/unix.2.bib, Misc/unix.2.bib",
note = "These are some good, inexpensive reference\slash
tutorial cards on UNIX commands, Bourne shell, Korn
shell, {\tt emacs}, {\tt vi}, C, C++, etc \ldots{}.
e.g. the new ``UNIX System Command Summary for
SVR4.2\slash Solaris 2.1'' (ISBN: 0-916151-61-1)
\ldots{}. Contact Belinda Frazier (\path|bel@ssc.com|)
or \path|sales@ssc.com| for more info.",
acknowledgement = ack-sk,
}
@InCollection{Stallman:1984:EEC,
author = "Richard M. Stallman",
title = "{EMACS}: The Extensible, Customizable,
Self-Documenting Display Editor",
crossref = "Barstow:1984:IPE",
pages = "300--325",
year = "1984",
bibdate = "Wed Oct 30 19:05:37 1996",
acknowledgement = ack-nhfb,
}
@Manual{DataGeneral:1985:DGE,
title = "{Data General EMACS} text editor user's manual",
organization = "{Data General Corporation}",
address = "Westboro, MA, USA",
edition = "Revision 00, {February} 1985",
pages = "various",
year = "1985",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
annote = "093-701011-00",
keywords = "Text editors (Computer programs) --- Handbooks,
manuals, etc.; EMACS (Computer program) --- Handbooks,
manuals, etc.",
}
@Book{Fischer:1985:MWG,
author = "Gerhard Fischer and Rul Gunzenh{\"a}user",
title = "{Methoden und Werkzeuge zur Gestaltung
benutzergerechter Computersysteme}",
volume = "1",
publisher = "deGruyter",
address = "Berlin, Germany; New York, NY, USA",
pages = "xi + 282",
year = "1985",
ISBN = "3-11-010070-3",
ISBN-13 = "978-3-11-010070-9",
bibsource = "Database/Wiederhold.bib",
note = "Also published in/as: summary rcvd Sep.1984.",
series = "Mensch Computer Kommunikation",
annote = "Evaluation, analysis, design and implementation,
investigations on Integrated Information Manipulation
Systems (IMS) to support human-computer communication.
Runs under UNIX, using Franz-LISP on a VAX 780 using
BISY window front-end for EMACS, INGRES, SCRIBE, DYPAR
n.l.parser, OPS5, Mycin(!), Pixel based font editor,
C.",
xxtitle = "Project {INFORM}",
}
@TechReport{McArthur:1985:RRE,
author = "David McArthur",
title = "Running {ROSS} in an {Emacs} environment",
type = "The Rand paper series",
number = "P-7088",
institution = "Rand Corporation",
address = "Santa Monica, CA, USA",
pages = "10",
month = apr,
year = "1985",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
keywords = "Data base management --- Computer programs.",
}
@Article{Stallman:1985:GM,
author = "Richard Stallman",
title = "The {GNU} Manifesto",
journal = j-DDJ,
volume = "10",
number = "3",
pages = "30--??",
month = mar,
year = "1985",
CODEN = "DDJOEB",
ISSN = "1044-789X",
bibdate = "Mon Sep 2 09:09:39 MDT 1996",
bibsource = "http://www.ddj.com/index/author/index.htm",
acknowledgement = ack-nhfb,
}
@Misc{UniPress:1985:ESE,
author = "{UniPress Software, Inc}",
title = "{Emacs} screen editor for {IBM-PC\slash MS-DOS}",
publisher = "UniPress Software",
address = "Edison, NJ, USA",
edition = "Version 1.0",
year = "1985",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
note = "1 program file (IBM--PC) on 2 computer disks manual.",
acknowledgement = ack-nhfb,
annote = "UniPress Emacs screen editor MS-DOS Emacs reference
manual, version 1.0 --- UniPress Emacs screen editor
manual, version 2.0. System requirements: 384K of
memory; PC-DOS version 2.00 or later.",
}
@Periodical{UniPress:1985:UEN,
author = "{UniPress Software, Inc}",
title = "{UniPress} Emacs newsletter",
publisher = "UniPress Software",
address = "Edison, NJ, USA",
pages = "various",
year = "1985",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
alttitle = "Emacs newsletter",
annote = "Caption title.",
keywords = "UNIX (Computer operating system) --- Periodicals.",
}
@Manual{UniPress:1985:UESa,
title = "UniPress {EMACS} screen editor: user's guide",
organization = "UniPress Software, Inc.",
address = "Edison, NJ, USA",
edition = "Version 2.0",
pages = "various",
year = "1985",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
}
@Manual{UniPress:1985:UESb,
title = "UniPress {EMACS} screen editor: {MLISP} user's guide",
organization = "UniPress Software, Inc.",
address = "Edison, NJ, USA",
edition = "Version 2.0",
pages = "various",
year = "1985",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
}
@Manual{UniPress:1985:UESc,
title = "UniPress {EMACS} screen editor: {UNIX EMACS} reference
manual",
organization = "UniPress Software, Inc.",
address = "Edison, NJ, USA",
edition = "Version 2.0",
pages = "various",
year = "1985",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
}
@Manual{UniPress:1985:UESd,
title = "UniPress {EMACS} screen editor: {VMS EMACS} reference
manual",
organization = "UniPress Software, Inc.",
address = "Edison, NJ, USA",
edition = "Version 2.0",
pages = "various",
year = "1985",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
}
@TechReport{Waters:1985:KST,
author = "Richard C. Waters",
title = "{KBEmacs}: a step toward the programmer's apprentice",
type = "Technical report",
number = "AI-TR-753",
institution = "Massachusetts Institute of Technology, Artificial
Intelligence Laboratory.",
address = "Cambridge, MA, USA",
pages = "236",
year = "1985",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
keywords = "KBEmacs (Computer program language); Emacs (Computer
program language)",
}
@TechReport{Beebe:1986:TIP,
author = "Nelson H. F. Beebe",
title = "{TECO on the IBM PC}",
institution = inst-CLSC,
address = inst-CLSC:adr,
pages = "62",
day = "22",
month = may,
year = "1986",
bibsource = "ftp://ftp.math.utah.edu/pub/bibnet/authors/b/beebe-nelson-h-f.bib",
}
@TechReport{Chen:1986:GEB,
author = "Pehong Chen",
title = "{GNU Emacs \BibTeX} mode: version 1.5",
type = "Technical report",
number = "UCB/CSD 87/317",
institution = "University of California. Computer Science Division",
address = "Berkeley, CA, USA",
pages = "ii + 34",
year = "1986",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
annote = "Sponsored in part by the National Science Foundation.
Defense Advanced Research Projects Agency (DoD).
Monitored by the Naval Electronic Systems Command.",
keywords = "Text editors (Computer programs).; Data base
management.",
}
@Manual{Kingsbury:1986:EEW,
author = "Barry M. Kingsbury and John Xenakis",
title = "{EMACS} extension writing guide",
organization = "Prime Computer",
address = "Natick, MA, USA",
edition = "Second",
pages = "",
year = "1986",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
annote = "DOC 5025-2LA Master Disk Revision Level 19.4 (Rev.
19.4) Loose-leaf for updating.",
keywords = "EMACS (Computer program); Prime computers ---
Programming.",
}
@Manual{Stallman:1986:GEMa,
author = "Richard Stallman",
title = "{GNU Emacs} manual",
number = "",
organization = pub-FSF,
address = pub-FSF:adr,
edition = "4th, {Emacs} version 17",
pages = "viii + 255",
month = feb,
year = "1986",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
keywords = "GNU Emacs.",
}
@Manual{Stallman:1986:GEMb,
author = "Richard Stallman",
title = "{GNU Emacs} manual",
organization = pub-FSF,
address = pub-FSF:adr,
edition = "5th, {Emacs} version 18 for {UNIX} users",
pages = "x + 284",
month = oct,
year = "1986",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
keywords = "GNU Emacs (Computer program)",
}
@Manual{Stallman:1986:GEMc,
author = "Richard Stallman",
title = "{GNU Emacs} manual",
organization = pub-FSF,
address = pub-FSF:adr,
edition = "6th, {Emacs} version 18 for {UNIX} users",
pages = "x + 284",
month = mar,
year = "1986",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
keywords = "GNU Emacs.",
}
@Manual{UniPress:1986:UEU,
title = "{UniPress Emacs} user's guide",
organization = "UniPress Software, Inc.",
address = "Edison, NJ, USA",
edition = "Version 2.10 and later",
pages = "various",
year = "1986",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
keywords = "UNIX (Computer file); Text editors (Computer
programs); EMACS (Computer program)",
}
@TechReport{Ballance:1987:PII,
author = "R. A. Ballance and M. L. {Van De Vanter}",
key = "Ballance \& Van De Vanter",
title = "Pan {I}: An Introduction for Users",
number = "UCB/CSC 88/410",
institution = "EECS-University of California",
address = "Berkeley, CA",
pages = "60",
month = sep,
year = "1987",
bibdate = "Mon Feb 27 12:00:58 1989",
bibsource = "Misc/programming.env.bib",
abstract = "Pan is a prototype and testbed for language-based
editors and viewers. Its design addresses the needs of
experienced users who manage complex objects such as
large software systems. All of Pan's components are
multi-lingual, incremental, description-driven,
customizable, and extensible. Viewing is facilitated by
semantics-based browsing and an object model which
integrated text and structure. Pan is intended to share
information with other tools, allowing integration into
a larger language, program and document development
environment. This documents, a users manual, describes
the basic operational facilities of Pan I, the current
implementation. It explains the concepts behind Pan's
editing environment, introduces editing commands, and
discusses techniques for customization. Appendices list
command bindings-to both keystrokes and menus, buffer
options, buffer flags, and a compatibility guide for
GNU Emacs users.",
owner = "payne",
}
@TechReport{Chen:1987:GEB,
author = "Pehong Chen",
title = "{GNU Emacs} {\BibTeX}-Mode",
number = "UCB/CSD 87/317",
institution = "University of California, Berkeley",
address = "Berkeley, CA, USA",
pages = "ii + 57",
year = "1987",
LCCN = "QA76.6 .C546 1987",
bibdate = "Tue Dec 29 08:26:24 1998",
bibsource = "Techreports/university-of-california-berkeley.bib",
price = "US\$3.50",
keywords = "text editors (computer programs)",
}
@TechReport{Chen:1987:GET,
author = "Pehong Chen",
title = "{GNU Emacs \TeX} mode: version 1.5",
type = "Report",
number = "UCB/CSD 87/316",
institution = "University of California, Computer Science
Department",
address = "Berkeley, CA, USA",
pages = "ii + 57",
year = "1987",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
keywords = "Text editors (Computer programs)",
}
@TechReport{Conklin:1987:SH,
author = "Jeff Conklin",
title = "A Survey of Hypertext",
volume = "2",
type = "MCC Technical Report STP-356-86, Rev.",
number = "2",
institution = "Microelectronics and Computer Technology Corporation",
address = "Austin, Texas",
pages = "69",
day = "3",
month = dec,
year = "1987",
bibsource = "Ai/hypertext.bib",
note = "MCC Software Technology Program unrestricted
non-proprietary report.",
abstract = "Hypertext is a computer-supported medium for
information in which many interlinked documents are
displayed with their links on a high-resolution
computer screen. The links may be directly activated by
a pointing device such as a mouse, which causes the
document referenced by the link to appear instantly in
a new window on the screen. While the concepts of
hypertext are not new, the technology to make it
effective is new. This paper reviews most of the
existing hypertext systems, and then explores in some
detail the fundamental features of hypertext and some
of the design options in constructing hypertext
systems. The advantages and disadvantages of hypertext
are discussed in terms of four major application
categories: macro literary systems, problem exploration
systems, structured browsing systems, and systems
developed to explore hypertext technology.",
abstract-2 = "This is the full report, with full text and extensive
bibliography, of the version which appeared in IEEE
Computer. It is provided in response to bingo-card
requests from IEEE Computer and to direct requests for
the ``more detailed version.'' You can request your own
copy by writing to Gloria Gutierrez, Software
Technology Program, MCC, 3500 West Balcones Center
Drive, Austin TX 78759-6509; (512) 343-0978. [This is
an extraordinary piece of work and I recommend it
highly: dh] CONTENT 1. Introduction 1.1 What is
hypertext? Fixes on the notion of machine-supported
links as the primary feature Views hypermedia as
generalization of what is linkable: text, + graphics,
digitized speech, and many other sensible expressions
(taste, odors, + etc.) Will focus on text-based
hypertext as the one we know most about 1.2 A Glimps of
using hypertext network or graph of material in nodes,
forming hypergraph or hyperdocu correspondence between
windows on screen and nodes is typical link icons
appear within a window and provide paths to related +
material user may create new links to new nodes or to
existing nodes database may be browsed by taking links
through displayed windows, by + search request, and by
navigating a diagram of the connections importance of
browsers to help user stay oriented 2. Hypertext
Implementations 2.1 Macro literary systems large
on-line libraries in which inter-document links are
machine + supported all publishing, reading,
collaboration, and criticism occur within + the system
Bush's Memex, Engelbart's NLS, Nelson's Xanadu, and
Trigg's Textnet + fit this vision 2.2 Problem
exploration systems support early unstructured thinking
on a problem, with many + disconnected ideas captured
in manipulable way authoring and outlining procedures
Goldstein and Bobrow's PIE (for representing
software-system design + perspective) Rittel's IBIS for
managing arguments in ``wicked'' system analysis +
problems Lowe's SYNVIEW for also tracking debate on
validity and relevance of + argument postings
University of North Carolina's WE writing environment
and outline + processors 2.3 Structured browsing
systems smaller scale than macro-literary, focused on
ease-of-use for + teaching, reference, and public
information large amount of existing information or
need to make existing + information very easy to access
Carnegie-Mellon University ZOG and Knowledge Systems'
KMS (successor) Emacs INFO Subsystem, ZOG-like internal
``help'' reference system Ben Shneiderman's University
of Maryland Hyperties system Symbolics Document
Examiner for on-line access to complete manual set + of
Symbolics Lisp machines 2.4 General hypertext
technology general-purpose setups for experimentation
with wide range of + applications Xerox PARC NoteCards
Brown University Intermedia project (extensive
experience and effort) Tektronix Neptune designed as
open, layered architecture (Hypertext + Abstract
Machine [HAM], C and Smalltalk!) 2.5 Summary ---
breakout of features support for hierarchic structures
support for non-hierarchical (graph-based)
cross-reference links multiple types of links
association of attribute/value pairs with links and
nodes patching of links together into single permanent
object multiple versions of nodes or links or both
procedural attachment of arbitrary procedures to events
at nodes and + links string and keyword searches of
hyperdocuments editor capability for contents of nodes
concurrent support to multiple users of hyperdocument
at same time pictorial and graphic support along with
text commercially available and supported 3. The
Essence of Hypertext 3.1 The power of linking 3.1.1
link follow \ldots{}",
keywords = "Hypertext MCC IEEE Computer HyperCard Memex Xanadu
Textnet PIE IBIS gIBIS SYNVIEW ZOG KMS Emacs INFO
Hyperties NoteCards Intermedia Neptune Boxer CREF
FileVision Guide PlaneText",
}
@Article{Flynn:1987:GR,
author = "Anita M. Flynn",
key = "Flynn",
title = "Gnat Robots",
journal = j-AI-EXPERT,
volume = "2",
number = "12",
pages = "34--42",
month = dec,
year = "1987",
ISSN = "0888-3785",
bibsource = "Ai/cmubib.bib",
location = "CMU E&S Library",
}
@TechReport{Flynn:1987:GRH,
author = "Anita M. Flynn",
title = "Gnat Robots (And How They Will Change Robotics)",
type = "Technical Report",
number = "Working Paper 295",
institution = inst-MIT,
address = inst-MIT:adr,
month = jun,
year = "1987",
bibsource = "Ai/mit.ai.reports.bib",
}
@Periodical{FSF:1987:GBN,
author = "{Free Software Foundation}",
title = "{GNU}'s bulletin: newsletter of the {Free Software
Foundation}",
publisher = "The Foundation",
address = "Cambridge, MA, USA",
pages = "various",
year = "1987",
ISSN = "1075-7813",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
alttitle = "GNU's bulletin",
annote = "Description based on: Vol. 1, no. 16 (Jan. 1994);
title from cover.",
keywords = "Text editors (Computer programs) --- Periodicals.; GNU
Emacs --- Periodicals.",
}
@Misc{FSF:1987:GM,
key = "GAWK",
title = "The {GAWK} Manual",
howpublished = pub-FSF # " " # pub-FSF:adr,
year = "1987",
note = "Also available via ANONYMOUS FTP to
\path|prep.ai.mit.edu|. See also \cite{Aho:1988:APL}.",
}
@InProceedings{Hinckley:1987:OOE,
author = "K. Hinckley",
title = "An object oriented extension language for integrating
disparate applications",
crossref = "Bullinger:1987:HII",
pages = "529--533",
year = "1987",
bibdate = "Wed Oct 30 06:13:54 MST 1996",
abstract = "QUICHE (quick user interface and command handling
extension) is an extension language based on the Icon
programming language. Like Lisp-style EMACS extension
languages, it can be used to define key bindings.
Unlike those extensions, QUICHE is not bound to any
particular application, can easily make system calls
and invoke programs and can call entry points in the
program it is extending, either directly or through a
trait binding mechanism. It is this latter ability that
makes QUICHE an ideal means of unifying application
interfaces. Traits are defined for applications such as
window managers, debuggers and editors. Each trait
encapsulates a set of basic operations that will be
available in any instance of an object. The existence
of a standard set of traits allows the interface
designer to tailor interfaces that provide consistency
across multiple applications, and to easily modify or
add features to a set of applications. In addition,
QUICHE can also extend applications which do not
themselves support any traits. A manager can be written
in QUICHE that, instead of calling the application,
inserts the commands corresponding to a call as though
the user had entered them.",
acknowledgement = ack-nhfb,
affiliation = "User Environment Apollo Computer, Inc., Chelmsford,
MA, USA",
classification = "C6140D (High level languages); C6110 (Systems
analysis and programming); C6180 (User interfaces);
C6150J (Operating systems)",
keywords = "Object oriented extension language; Disparate
applications; Quick user interface; Command handling
extension; Icon programming language; Key bindings;
System calls; Entry points; Trait binding mechanism;
QUICHE; Application interfaces; Window managers;
Debuggers; Editors; Interface designer; Consistency;
Multiple applications",
thesaurus = "High level languages; Multiprogramming;
Object-oriented programming; User interfaces",
}
@InProceedings{Palmer:1987:DEOa,
author = "J. E. Palmer and T. M. Duffy and K. Gomoll and T.
Gomoll and J. Palmquist-Richards and J. A. Trumble",
title = "The design and evaluation of online help for {UNIX}
{EMACS}: access mechanisms",
crossref = "Bullinger:1987:HII",
pages = "461--466",
year = "1987",
bibdate = "Wed Oct 30 06:13:54 MST 1996",
abstract = "Discusses the use of the card sort technique and
cluster analysis for determining an effective
organization for a help menu in UNIX EMACS. Similarity
data using a card sorting task with EMACS commands was
gathered. Hierarchical cluster analysis was then used
to analyze the data. The results indicate that
differences among novices, intermediates, and experts
appear with computer-based concepts such as windows and
buffers, but that the sorts are more similar than they
are different. It is argued that cluster analysis may
aid designers in determining a functional organization,
but that in this domain, this organization will not
help users bridge the mapping from real world tasks to
computer tasks.",
acknowledgement = ack-nhfb,
affiliation = "Commun. Design Center, Carnegie Mellon Univ.,
Pittsburgh, PA, USA",
classification = "C6180 (User interfaces); C6110B (Software
engineering techniques); C7106 (Word processing)",
keywords = "User interface design; Online help; UNIX EMACS; Card
sort technique; Cluster analysis; Menu",
thesaurus = "Pattern recognition; Software engineering; Software
packages; UNIX; User interfaces; Word processing",
}
@TechReport{Palmer:1987:DEOb,
author = "James E. Palmer",
title = "The design and evaluation of online help for {UNIX}
{Emacs}: Capturing the user in menu design",
type = "CDC technical report series",
number = "39",
institution = "Communications Design Center, Carnegie Mellon
University",
address = "Pittsburgh, PA, USA",
pages = "17",
month = nov,
year = "1987",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
keywords = "Technical writing.; Electronic data processing
documentation.; Computers --- Computer engineering.;
UNIX (Computer operation system).",
}
@TechReport{Rich:1987:FRS,
author = "Charles Rich and Richard C. Waters",
title = "Formalizing Reusable Software Components in the
Programmer's Apprentice",
number = "AI Memo 954",
institution = inst-MIT,
address = inst-MIT:adr,
pages = "28",
month = feb,
year = "1987",
bibsource = "Ai/mit.aitr.aim.bib",
abstract = "There has been a long-standing desire in computer
science for a way of collecting and using libraries of
standard software components. The limited success in
actually doing this stems not from any resistance to
the idea, nor from any lack of trying, but rather from
the difficulty of choosing an appropriate formalism for
representing components. For a formalism to be
maximally useful, it must satisfy five key desiderata:
expressiveness, convenient combinability, semantic
soundness, machine manipulability, and programming
language independence. The Plan Calculus formalism
developed as part of the Programmer's Apprentice
project satisfies each of these desiderata quite well.
It does this by combining the ideas from flowchart
schemas, data abstraction, logical formalisms, and
program transformations. The efficacy of the Plan
Calculus has been demonstrated in part by a prototype
program editor called the Knowledge-based Editor in
Emacs. This editor makes it possible for a programmer
to construct a program rapidly and reliably by
combining components represented as plans.",
archived = "f1993",
contract = "NSF MCS-7912179, N00014-85-K-0124, IBM, Sperry",
keywords = "reuse, Programmer's Apprentice, software, components,
plan calculus",
}
@Manual{Sheppo:1987:ERG,
author = "Marion Sheppo",
title = "{EMACS} reference guide",
organization = "Prime Computer, Inc.",
address = "Natick, MA, USA",
edition = "2nd for Release 21.0",
pages = "various",
year = "1987",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
annote = "DOC5026-2LA. This guide documents the software
operation of the Prime Computer and its supporting
systems and utilities as implemented at Master Disk
Revision level 21.0 (Rev. 21.0).",
keywords = "Prime computers --- Programming.; EMACS (Computer
program); Prime computers.",
}
@Manual{Stallman:1987:GEM,
author = "Richard Stallman",
title = "{GNU} Emacs manual",
organization = pub-FSF,
address = pub-FSF:adr,
edition = "6th, Version 18",
pages = "viii + 284",
month = mar,
year = "1987",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
keywords = "GNU Emacs (Computer program)",
}
@InProceedings{Waters:1987:PAS,
author = "R. C. Waters",
title = "The Programmer's Apprentice: a session with
{KBEmacs}",
crossref = "Anonymous:1987:PAT",
pages = "1.",
month = "",
year = "1987",
bibdate = "Wed Oct 30 06:13:54 MST 1996",
abstract = "Summary form only given. The long term goal of the
Programmer's Apprentice project is to develop a theory
of programming and to automate the programming process.
Recognizing that fully automatic programming is very
far off, the current research is directed toward the
intermediate goal of developing an intelligent computer
assistant for programmers called the Programmer's
Apprentice (PA). The intention is for the PA to act as
a junior partner and critic, keeping track of details
and assisting with the easy parts of the programming
process while the programmer focuses on the hard part
of the process. The Knowledge-Based Editor in Emacs
(KBEmacs) is the current demonstration system
implemented as part of the PA project. KBEmacs is
capable of operating on Ada and Lisp programs of
realistic size and complexity. The principal benefit of
KBEmacs is that it makes it possible to construct a
program rapidly and reliably by combining algorithmic
fragments stored in a library. The heart of the paper
is a scenario showing the currently running KBEmacs
system in action. The scenario shows a 58 line Ada
program being constructed using six simple KBEmacs
commands. In addition the paper discusses the basic
goals of the PA project and the key AI ideas behind
KBEmacs.",
acknowledgement = ack-nhfb,
affiliation = "Artificial Intelligence Lab., MIT, Cambridge, MA,
USA",
classification = "C6170 (Expert systems)",
keywords = "KBEmacs; Programmer's Apprentice project; Intelligent
computer assistant; Junior partner; Critic;
Knowledge-Based Editor; Emacs; PA project; Ada; Lisp
programs; AI ideas",
thesaurus = "Automatic programming; Knowledge based systems",
}
@Book{Aho:1988:APL,
author = "Alfred V. Aho and Brian W. Kernighan and Peter J.
Weinberger",
key = "AWK87",
title = "The {AWK} Programming Language",
publisher = pub-AW,
address = pub-AW:adr,
pages = "x + 210",
year = "1988",
ISBN = "0-201-07981-X",
ISBN-13 = "978-0-201-07981-4",
LCCN = "QA76.73.A95 A35 1988",
bibdate = "Fri Apr 30 10:37:28 1999",
note = "See \cite{FSF:1987:GM}.",
nb = "the author order is AKW, but the key looks better as
AWK",
}
@Misc{Anonymous:1988:MDD,
author = "Anonymous",
title = "{Macintosh} download disk 16",
publisher = "University of Rochester Computing and Reserve
Library",
address = "Rochester, NY, USA",
year = "1988",
bibdate = "Wed Feb 28 15:00:20 MST 1996",
note = "1 computer disk. Title supplied by cataloger. For
fuller description of contents see list at Computing
and Reserve Library Desk. 3dplt --- Compact --- DA Appl
Font 1.03 --- DA Artisto 1.41 --- DA Blank Screen ---
DA Camera --- DA ControlPanelPlus 0.85 --- DA
Coordinates --- DA DeskZap 1.3 --- DA Dvorak3.0+ --- DA
f(n)key --- DA Fade to Black 2.0 --- DA Font Grabber
--- DA Glass --- DA Idle --- DA MakePICTfile --- DA
Mouseometer --- DA mouseprint --- DA Multi-Scrap --- DA
New Idle1 --- DA New Scrapbook2.0 --- DA NumCaps 2.0
--- DA ParmBlaster --- DA ProMouse1.1 --- DA
Screendump2 --- DA ScreenSave --- DA Show Clip --- DA
Show PICTure --- DA Stars1.3 --- DA Studdclip --- DA
ZoomIdle 1.1 --- EDIT 2.0d1 --- Icon Exchanger 2.0 ---
Install Twelve-C Demo --- Inventory --- Keeper --- MAC
ID --- MassCopier --- microEMACS --- Orion1.4 ---
PageSetupCustomizer --- RamDisk+ --- VideoWorks.
Collection of freeware and shareware. System
requirements: Macintosh. Macintosh (Computer).",
acknowledgement = ack-nhfb,
}
@InProceedings{Borenstein:1988:UER,
author = "N. S. Borenstein",
title = "{UNIX} Emacs: a retrospective. Lessons for flexible
system design",
crossref = "ACM:1988:PAS",
pages = "95--101",
month = "",
year = "1988",
bibdate = "Wed Oct 30 06:09:12 MST 1996",
abstract = "UNIX Emacs is well-known and widely used as a text
editor that has been extended in a remarkable number of
directions, not always wisely. Because it is
programmable in a powerful yet simple programming
language, Emacs has been used as a development tool for
the construction of some remarkably complex
user-oriented programs. Indeed, it has served as both a
user interface management system and a user interface
toolkit, through it was designed as neither. The paper
discusses the features that have made it so popular for
user interface development, in an attempt to derive
lessons of value for more powerful and more
systematically designed systems in the future.",
acknowledgement = ack-nhfb,
affiliation = "Dept. of Comput. Sci., Carnegie-Mellon Univ.,
Pittsburgh, PA, USA",
classification = "C6180 (User interfaces); C6130 (Data handling
techniques); C6115 (Programming support)",
keywords = "UNIX Emacs; Text editor; Programming language;
Development tool; User-oriented programs; User
interface management system; User interface toolkit",
thesaurus = "Software tools; Text editing; UNIX; User interfaces",
}
@InProceedings{Gadol:1988:SCL,
author = "S. Gadol",
title = "{SPE} --- a {Common Lisp} environment on
workstations",
crossref = "Anonymous:1988:PFA",
pages = "399--404",
month = "",
year = "1988",
bibdate = "Wed Oct 30 06:13:54 MST 1996",
abstract = "The Symbolic Programming Environment (SPE), developed
by Sun Microsystems, is made up of a collection of
programming tools and libraries that implement a
powerful programming environment for Common Lisp. The
central component of the system is the SPE Lisp editor.
It is implemented in the style of Emacs, in that it is
built up from a set of character and buffer managing
primitives in a way that is user-extensible. Because
the system is written completely in Common Lisp, the
majority of its functionality is readily portable to
any full Common Lisp implementation. Some of interfaces
the SPE depends on, such as the debugger, depend on
lower level extensions to Common Lisp. But these also
have turned out to be quantifiable. The Symbolic
Programming Environment is an example of an
architecture for future workstation-based productivity
tools. Like the Common Lisp system it is built on, the
SPE is designed for evolution. Inherent in its
structure is the capability for it to extend,
transform, and grow in a variety of directions far
beyond those initially intended by its developers.",
acknowledgement = ack-nhfb,
affiliation = "Sun Microsyst., Mountain View, CA, USA",
classification = "C6115 (Programming support); C6140D (High level
languages)",
keywords = "Character managing primitives; SPE; Common Lisp
environment; Workstations; Symbolic Programming
Environment; Sun Microsystems; Programming tools;
Libraries; Programming environment; SPE Lisp editor;
Buffer managing primitives; User-extensible; Portable;
Interfaces; Debugger",
thesaurus = "LISP; Programming environments; Software tools",
}
@Article{Halme:1988:GED,
author = "H. Halme and J. Heinanen",
title = "{GNU Emacs} as a dynamically extensible programming
environment",
journal = j-SPE,
volume = "18",
number = "10",
pages = "999--1009",
month = oct,
year = "1988",
CODEN = "SPEXBL",
ISSN = "0038-0644",
bibdate = "Wed Oct 30 06:19:01 MST 1996",
abstract = "GNU Emacs is usually used only as an extensible
editor. However, the ability to integrate inferior
processes into GNU Emacs makes it an attractive
programming environment. Like Interlisp and
Smalltalk-80, GNU Emacs can be extended dynamically by
its user. Unlike these programming environments, it can
be used easily as a programming environment for an
arbitrary programming language, and not just for its
extension language. The authors discuss the methods of
extending GNU Emacs and how they have applied them in
creating a programming environment for a high-level
specification language called AGENT.",
acknowledgement = ack-nhfb,
affiliation = "Comput. Syst. Lab., Tampere Univ. of Technol.,
Finland",
classification = "C6115 (Programming support); C6140D (High level
languages)",
keywords = "GNU Emacs; Dynamically extensible programming
environment; Extensible editor; High-level
specification language; AGENT",
pubcountry = "UK",
thesaurus = "High level languages; Programming environments;
Specification languages; Text editing",
}
@TechReport{Hammerslag:1988:TM,
author = "D. Hammerslag",
title = "Treemacs manual",
number = "UIUCDCS-R-88-1427",
institution = "University of Illinois at Urbana-Champaign",
address = "Urbana-Champaign, IL, USA",
pages = "25",
month = may,
year = "1988",
bibdate = "Wed Oct 30 06:19:01 MST 1996",
abstract = "Treemacs is a superset of GNU Emacs (currently GNU
version 18.50). It is GNU Emacs extended to allow the
direct editing of tree structures. This is implemented
as a new major mode, tree-mode. In tree-mode, trees are
edited directly. The user sees a display of the tree in
the current window. The cursor is positioned at the
current node of the tree (tree-point). Each node in the
tree contains a text buffer (called the node's text).
Emacs text editing commands apply to the text of the
current node. Tree commands are used to move around in
the tree and to modify the tree structure. This manual
is divided into three sections. The first gives an
introduction to tree editing and to Treemacs. The
second is a user's manual intended for one who wants to
use Treemacs without customizing or programming it. The
third section is a programmer's manual. Treemacs
currently runs on Vaxen, SUN-3 workstations, and Gould
PowerNode machines.",
acknowledgement = ack-nhfb,
classification = "C6130 (Data handling techniques); C6120 (File
organisation)",
issuedby = "Univ. Illinois at Urbana-Champaign, IL, USA",
keywords = "Data structures; Treemacs; GNU Emacs; Direct editing;
Tree structures; Tree-mode; Text editing; Tree editing;
Vaxen; SUN-3 workstations; Gould PowerNode",
pubcountry = "USA",
thesaurus = "Data structures; Text editing; Trees [mathematics];
User manuals",
}
@InProceedings{Lea:1988:LGC,
author = "Douglas Lea",
title = "{libg++}, The {GNU C++} Library",
crossref = "USENIX:1988:UPC",
pages = "243--256",
day = "17--21",
month = oct,
year = "1988",
bibdate = "Fri Oct 18 07:24:24 MDT 1996",
bibsource = "ftp://ftp.uu.net/library/bibliography",
abstract = "The GNU C++ library is a collection of C++ classes and
support tools. The paper describes several general
strategies for structuring and designing GNU C++
library classes, along with an informal taxonomy of
library classes and their implementations.",
acknowledgement = ack-nhfb,
affiliation = "State University of New York, College at Oswego",
classification = "C6150C (Compilers, interpreters and other
processors); C6140D (High level languages)",
keywords = "G++ compiler; Libg++; GNU C++ library; C++ classes;
Support tools; Library classes",
thesaurus = "C language; Object-oriented programming; Program
compilers; Software tools; Subroutines",
}
@Book{Lewis:1988:GEL,
author = "Bil Lewis",
title = "{GNU} Emacs Lisp manual: Emacs version 18 for {UNIX}
users",
publisher = "????",
address = "????",
pages = "various",
month = mar,
year = "1988",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
keywords = "GNU Emacs (Computer program); Text editors (Computer
programs)",
}
@TechReport{Ritchie:1988:SHC,
author = "Russell A. Ritchie",
title = "Scottish {HCI} Centre extensions for {GNU} Emacs",
type = "Report",
number = "AMU8829/01S (also Strathclyde University computer
science report; no. CS/HCI/8829/01)",
institution = "Scottish HCI Centre",
address = "Edinburgh, Scotland",
pages = "22",
day = "9",
month = mar,
year = "1988",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
abstract = "This report describes five extensions, written in GNU
Emacs-LISP. The first is an expansion of the Sun View
window system menu interface, providing scope for HCI
involvement in Emacs programming and usage. The rest
make writing LISP, PROLOG and \POSTSCRIPT{} programs,
and creating \TeX{} and \LaTeX{} documents easier. Four
of these extensions come with the distribution version
of GNU Emacs, but have been modified by the author to
provide extra features. The other, \POSTSCRIPT{} mode,
is home-gown and facilitates development of software
for the NeWS window system.",
acknowledgement = ack-nhfb,
annote = "Alvey GR/D 42368",
keywords = "Text editors (Computer programs); GNU emacs (Computer
programs)",
}
@MastersThesis{Russel:1988:PCE,
author = "Elizabeth Russel",
title = "{PBE} customizer: an expert aide for customizing {PBE}
Emacs",
type = "Master's project",
school = "Boston University, College of Liberal Arts, Computer
Science Dept.",
address = "Boston, MA, USA",
pages = "32",
year = "1988",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
note = "Also BUCS technical report 88-005.",
acknowledgement = ack-nhfb,
keywords = "Word processing.; Man-machine systems.",
}
@Article{Salzman:1988:OLA,
author = "I. J. Salzman",
title = "An objective look at {C++} compilers",
journal = j-UNIX-REVIEW,
volume = "6",
number = "11",
pages = "81, 83, 85--86, 88",
month = nov,
year = "1988",
CODEN = "UNRED5",
ISSN = "0742-3136",
bibdate = "Wed Oct 30 06:19:01 MST 1996",
abstract = "Three C++ compilers are being reviewed: Oasys Designer
C++ release 1.2 (from Oasys Inc.). Oregon C++ release
1.1c (from Oregon Software Inc.), and GNU C++ release
1.25.1 (from The Free Software Foundation). The Oasys
compiler is actually a port of the AT and T C++
translator (release 1.2), while the Oregon and GNU
products are true compilers producing object modules
for the target machine. All of the compilers reviewed
are worthy products, and you should make your choice on
the basis of your particular objectives. If you want a
good port of the AT and T translator and a product that
adheres closely to the C++ language specification, then
the Oasys product may be the way to go. If you are
doing commercial product development and want a
compiler that provides a source-level debugger and a
high level of vendor support, then Oregon Software's
product might best fit the bill. If, on the other hand,
you're interested in C++ and not concerned with selling
your code then GNU C++ is definitely the choice for
you.",
acknowledgement = ack-nhfb,
affiliation = "Rand Corp., Santa Monica, CA, USA",
classification = "C6150C (Compilers, interpreters and other
processors); C6140D (High level languages)",
keywords = "C++ compilers; Oasys Designer C++ release 1.2; Oasys;
Oregon C++ release 1.1c; GNU C++ release 1.25.1; The
Free Software Foundation; AT and T translator;
Commercial product development; Source-level debugger;
Vendor support",
pubcountry = "USA",
thesaurus = "C language; Program compilers; Software packages",
}
@Misc{Shneiderman:1988:UIS,
author = "Ben Shneiderman and Thomas Malone and Donald Norman
and James Foley",
title = "User Interface Strategies '88 (videotape)",
publisher = inst-U-MARYLAND,
address = inst-U-MARYLAND:adr,
year = "1988",
bibdate = "Fri Jul 22 00:13:31 1994",
note = "From {\em Computing Reviews\/}: ``User interface
strategies '88 was a two-day satellite TV course,
taught October 5 and 12, 1988, and organized by Ben
Shneiderman. The course features four outstanding
researchers in human-computer interaction: Ben
Shneiderman, Thomas W. Malone, Donald A. Norman, and
James D. Foley. All four speakers are not only leading
researchers in their respective areas, but also
excellent communicators. This package consists of 10
hours of videotape (eight hours of lectures and two
hours of discussion) and four books of supplementary
materials. These materials consist of more than 400
pages and contain all the transparencies used in the
presentations, annotated bibliographies and relevant
papers (except for Malone's area), and a transcript of
Norman's lectures. {\ldots} The programming environment
features the {NeWS} window system with pie menus, the
{EMACS}-editor with tab windows, and a
`pseudo-scientific visualizer' for {\POSTSCRIPT}
dictionaries.''",
price = "US\$1,800.00",
acknowledgement = ack-nhfb,
}
@TechReport{Smith:1988:ILL,
author = "W. W. Smith and R. H. Campbell",
title = "Introduction to Leif language descriptions",
number = "UIUCDCS-R-88-1444",
institution = "University of Illinois at Urbana-Champaign",
address = "Urbana-Champaign, IL, USA",
pages = "78",
month = jul,
year = "1988",
bibdate = "Wed Oct 30 06:19:01 MST 1996",
abstract = "Explains how to create and compile new language
description files for Leif. Leif performs syntax
checking and provides language oriented editing
features for a text editor. The User Manual for Leif
with GNU Emacs and the GNU Emacs Manual describe how to
use Leif with its front-end, GNU Emacs. Leif uses
languages specified with a regular expression lexical
analyzer and an LALR(1) parse table. Each language
description has three user specified components that
are combined into a single, compiled language
description file. The authors describe the utility that
combines each of these three components into a
completed language description file. They then describe
the three components of a language description: parse
tables, lexical analyser tables, and supplementary
information. They describe the utilities used to
process the specifications of these three parts of a
language description file, Leif editing commands that
may be used to help debug new languages, and two
additional utilities supplied with Leif. They show how
Leif locates the language description files required to
edit a program. The text of a small example language is
given. Appendices describe the utilities used to build
a language description.",
acknowledgement = ack-nhfb,
affiliation = "Dept. of Comput. Sci., Illinois Univ., Urbana, IL, USA
description manual, and installation guide",
classification = "C6140D (High level languages); C6150C (Compilers,
interpreters and other processors); C6130D (Document
processing techniques)",
issuedby = "Univ. Illinois at Urbana-Champaign, IL, USA",
keywords = "Debugging; Leif; Language description files; Syntax
checking; Language oriented editing features; Text
editor; Front-end; GNU Emacs; Regular expression
lexical analyzer; LALR(1) parse table; User specified
components; Compiled language; Parse tables; Lexical
analyser tables; Supplementary information; Utilities;
Specifications; Editing commands",
pubcountry = "USA",
thesaurus = "Program compilers; Specification languages; Text
editing",
}
@TechReport{Smith:1988:LLO,
author = "William W. (William Wayne) Smith and Daniel LaLiberte
and Roy Harold Campbell",
title = "The Leif language oriented editor: user manual,
language description manual, and installation guide",
type = "Report",
number = "UIUCDCS-R-88-1444, UILU-ENG-88-1749",
institution = "Dept. of Computer Science, University of Illinois at
Urbana-Champaign",
address = "1304 W. Springfield, Urbana, IL 61801, USA",
pages = "41 + 30 + 5",
month = jul,
year = "1988",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
abstract = "Leif is a language-oriented editor that supports a
full set of text editing commands as well as commands
based on the program's syntex. The editor uses an
incremental parser to update syntactic information
about the program. Leif can be used with several
different context free languages simultaneously. This
document describes how to use Leif with GNU Emacs as
the front-end editor. Leif is implemented as a
minor-mode within GNU Emacs. The authors describe the
motivation for constructing Leif, and how Leif works
internally. A short introduction is then given to GNU
Emacs. To show to use Leif with Emacs key bindings,
examples are presented of the commands in Leif. The
authors also describes using Leif in the VIP mode of
GNU Emacs (VIP mode simulates the editor Vi within
Emacs). They describe commands that use the tree
structure of the edited program. Emacs variables are
listed that allow the behavior of Leif in Emacs to be
customized. An appendix contains an example {.emacs}
file that may be placed in your home directory. The
index and command summaries at the end of the paper
help to locate where commands are described in this
document.",
acknowledgement = ack-nhfb,
affiliation = "Dept. of Comput. Sci., Illinois Univ., Urbana, IL, USA
description manual, and installation guide",
classification = "C6130D (Document processing techniques); C6110B
(Software engineering techniques); C4210 (Formal
logic)",
issuedby = "Univ. Illinois at Urbana-Champaign, IL, USA",
keywords = "Leif (Computer file); Text editors (Computer
programs); Program syntax; SAGA project; Software
automation; Software generation; Software
administration; Syntactic information updating;
Software engineering; Leif; Language oriented editor;
GNU Emacs; Text editing commands; Context free
languages; Ghezzi Mandrioli incremental parsing
algorithm; Syntactic information updating; Program
editing; User manual; Language-oriented editor; Text
editing commands; Incremental parser; Leif; Context
free languages; GNU Emacs; Front-end editor;
Minor-mode; Key bindings; VIP mode; Tree structure;
Commands",
pubcountry = "USA",
thesaurus = "Context-free languages; Program compilers; Software
engineering; Text editing",
}
@Manual{Stallman:1988:GEMa,
author = "Richard Stallman",
title = "{GNU Emacs} manual",
organization = pub-FSF,
address = pub-FSF:adr,
edition = "6th, {Emacs} version 18",
pages = "x + 290",
month = feb,
year = "1988",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
keywords = "GNU Emacs.",
}
@Manual{Stallman:1988:GEMb,
author = "Richard Stallman",
title = "{GNU Emacs} manual",
organization = pub-FSF,
address = pub-FSF:adr,
edition = "6th, {Emacs} version 18 for {UNIX} users",
pages = "x + 294",
year = "1988",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
annote = "MIC 3.2.4.",
}
@Manual{Stallman:1988:GMG,
author = "Richard Stallman",
title = "{GDB} manual: the {GNU} source-level debugger",
organization = "Free Software Foundation, Inc.",
address = "Cambridge? Mass.",
edition = "2nd, {GDB} version 2.5",
pages = "ii + 63",
month = feb,
year = "1988",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
keywords = "GDB (Computer program) --- Handbooks, manuals, etc.;
GNU Emacs --- Handbooks, manuals, etc.; Debugging in
computer science --- Handbooks, manuals, etc.; Computer
programs --- Testing --- Handbooks, manuals, etc.",
}
@Manual{Stallman:1988:TGD,
author = "Richard Stallman and Robert J. Chassell",
title = "Texinfo: the {GNU} documentation format",
organization = pub-FSF,
address = pub-FSF:adr,
edition = "1.1",
pages = "vi + 102",
month = may,
year = "1988",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
keywords = "GNU Emacs --- Handbooks, manuals, etc.; Texinfo ---
Handbooks, manuals, etc.; Text editors (Computer
programs) --- Handbooks, manuals, etc.",
}
@Manual{Stallman:1988:TTL,
author = "Richard Stallman",
title = "Termcap: the termcap library and data base",
organization = pub-FSF,
address = pub-FSF:adr,
edition = "Second",
pages = "ii + 66",
month = nov,
year = "1988",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
keywords = "Termcap.; GNU Emacs (Computer program); UNIX (Computer
operating system); Subroutines (Computer programs)",
}
@TechReport{Stallman:1988:UPG,
author = "Richard M. Stallman",
title = "Using and Porting {GNU CC}",
institution = pub-FSF,
address = pub-FSF:adr,
year = "1988",
note = "Electronic mail: \path|rms@prep.ai.mit.edu|. Software
also available via ANONYMOUS FTP to
\path|prep.ai.mit.edu|.",
}
@Book{Tanenbaum:1988:MAS,
author = "Andrew S. Tanenbaum and Johan W. Stevenson and Jost
Muller",
title = "{MINIX} for the {ATARI ST} and {MINIX} manual for the
{ATARI ST}",
publisher = pub-PH,
address = pub-PH:adr,
edition = "Version 1.1",
year = "1988",
ISBN = "0-13-584392-8 (disks), 0-13-584434-7 (manual)",
ISBN-13 = "978-0-13-584392-5 (disks), 978-0-13-584434-2
(manual)",
LCCN = "QA76.76.O63",
bibdate = "Mon Sep 30 17:55:16 MDT 1996",
note = "9 computer disks.",
abstract = "MINIX is a new operating system that is similar to
Version 7 of the UNIX operating system. MINIX is widely
used on the IBM PC, and has now been ported to the
Atari ST and Mega ST. Unlike the UNIX system itself,
MINIX comes complete with all the source code. MINIX
features: a system call compatible with V7 UNIX (except
for a few very minor calls); a Kernighan and Ritchie
compatible C compiler; a shell that is functionally
identical to the Bourne shell; full multiprogramming
(fork+exec; background jobs in shell: cc file.c and );
a full screen editor inspired by emacs (modeless,
autoinsert, etc.); over 60 popular utilities (cat, cp,
grep, ls, make, mount, sort, etc.); and over 100
library procedures (atoi, fork, malloc, stdio, strcmp,
etc.) It works with floppy-only systems or with hard
disk systems. A full operating system source code is
included, and the source code for all utilities (except
the C compiler) is also included.",
acknowledgement = ack-nhfb,
annote = "Title from disk label. An operating system for small
computer systems, inspired by V7 of the UNIX operating
system. It has a hierarchical file system, supports
full multitasking, and has a command interpreter,
called the shell, similar to the Bourne shell on UNIX.
Comes with 100 utility programs, nearly all of which
are similar to UNIX programs. System requirements:
Amiga ST; 512K RAM; TOS. Atari ST",
classification = "C6150J (Operating systems)",
keywords = "Floppy disk systems; MINIX; Operating system; Atari
ST; Mega ST; UNIX; Source code; System call; Kernighan
and Ritchie compatible C compiler; Bourne shell;
Multiprogramming; Full screen editor; Emacs; Utilities;
Library procedures; Hard disk systems; Operating
systems (Computers) --- Software.",
pubcountry = "USA",
thesaurus = "Atari computers; Microcomputer applications; Unix;
User manuals",
}
@InProceedings{Tiemann:1988:SRP,
author = "M. D. Tiemann",
title = "Solving the {RPC} problem in {GNU C++}",
crossref = "Anonymous:1988:UPC",
pages = "343--361",
day = "17--21",
month = oct,
year = "1988",
bibdate = "Wed Oct 30 06:09:12 MST 1996",
bibsource = "ftp://ftp.uu.net/library/bibliography",
abstract = "The C++ programming language is being used in a number
of projects which implement some form of distributed
execution model. While each of these projects differ in
their goals and implementations, all of them ultimately
depend on some kind of remote procedure call (RPC), a
facility which is not easily supported by C++. For this
reason, many different extensions to C++ have been
implemented, each one coping with this problem in its
own, unique way. The paper presents a construct, called
a wrapper, which provides a more general solution to
the problem than previous work, and in some cases,
provides greater efficiency as well. Wrappers are a
highly experimental feature, implemented in the GNU C++
compiler; the paper represents the start of their
evolution. GNU C++ is a highly optimizing native code
C++ compiler for the SUN3 and the VAX running BSD 4.23.
The compiler as well as a C++ source level debugger,
GDB+, a linker, documentation, and library support, is
available as free software, under the terms of the GNU
General Public License.",
acknowledgement = ack-nhfb,
affiliation = "Microelectronics and Computer Technology Corporation,
Austin, TX, USA",
classification = "C6140D (High level languages); C6150C (Compilers,
interpreters and other processors)",
keywords = "RPC problem; GNU C++; Distributed execution model;
Remote procedure call; Wrapper; C++ compiler; Highly
optimizing native code C++ compiler; SUN3; VAX; Source
level debugger; GDB+; Library support",
thesaurus = "C language; Object-oriented programming; Program
compilers",
}
@Article{vonBechtolsheim:1988:UEE,
author = "Stephan {von Bechtolsheim}",
title = "Using the {Emacs} Editor to Safely Edit {\TeX}
Sources",
journal = j-TEXNIQUES,
volume = "7",
pages = "195--202",
year = "1988",
bibdate = "Tue Dec 29 08:27:39 1998",
}
@MastersThesis{Yacko:1988:GEB,
author = "Nancy Jane Yacko",
title = "A {GNU Emacs} browser for {C++} code development",
type = "Thesis (M.S.)",
school = "University of Illinois at Urbana-Champaign",
address = "Urbana-Champaign, IL 61801, USA",
pages = "v + 33",
year = "1988",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
}
@InProceedings{Beer:1989:DWT,
author = "M. D. Beer and S. M. George and R. Rada",
title = "Developing writing tools for {UNIX} workstations",
crossref = "Anonymous:1989:PAE",
pages = "31--36",
month = "",
year = "1989",
bibdate = "Wed Oct 30 06:13:54 MST 1996",
abstract = "The availability of networks of UNIX-based graphical
workstations has stimulated new developments in
authoring software. The paper presents the authors'
experiences along several fronts. First, they discuss
the lessons learnt from developing a simple authoring
tool to run on the Atari-ST, using the GEM operating
system. They then discuss the development of software
using (1) the X11 toolkit and one of the readily
available widget sets, (2) a configurable editor (GNU
Emacs) to develop prototype applications, and (3) the
Andrew toolkit to re-implement the original Atari
authoring system, but this time providing a tool that
will allow several authors to collaborate closely with
each other. The practicalities of these approaches are
discussed with reference to their own experiences.",
acknowledgement = ack-nhfb,
affiliation = "Dept. of Comput. Sci., Liverpool Univ., UK",
classification = "C6180 (User interfaces); C6115 (Programming
support); C6150J (Operating systems); C6130B (Graphics
techniques)",
keywords = "Writing tools; UNIX-based graphical workstations;
Authoring software; Authoring tool; Atari-ST; GEM
operating system; X11 toolkit; Widget sets;
Configurable editor; GNU Emacs; Prototype applications;
Andrew toolkit; Atari authoring system",
thesaurus = "Authoring languages; Computer graphics; Software
tools; UNIX; User interfaces; Workstations",
}
@TechReport{Black:1989:SSGa,
author = "J. E. Black",
title = "{SCRIBE} support in {GNU} Emacs",
type = "Technical information series",
number = "89CRD197",
institution = "GE Research and Development Center",
address = "Schenectady, NY, USA",
pages = "v + 70 + 14",
month = dec,
year = "1989",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
keywords = "SCRIBE (Computer program); GNU Emacs (Computer
program); Text editors (Computer programs); Compilers
(Computer programs)",
}
@InProceedings{Black:1989:SSGb,
author = "J. E. Black",
title = "Scribe support in {GNU} Emacs",
crossref = "ACM:1989:CPS",
pages = "125--135",
month = "",
year = "1989",
bibdate = "Wed Oct 30 06:13:54 MST 1996",
abstract = "Scribe is a high level document processing system, or
a composition engine which permits users to deal with
documentation at a higher level of abstraction than is
possible with word-processors or page processors. With
the increasing popularity of WYSIWYG style editors,
which are more properly described as page processing
systems; fewer people are willing to insert the type of
mark-up commands required to properly use a document
processing system such as Scribe. Described are a set
of support functions, written in a dialect of LISP,
which provide assistance to the Scribe user during the
preparation and composition of documents. These support
functions provide short-cuts for insertion of Scribe
mark-up, as well as certain features useful during
composition and maintenance of large documents.
Collectively, these support functions are called Scribe
Mode and are written to be used with the GNU Emacs
editor. GNU Emacs is known to run under the UNIX and
VAX/VMS operating systems, and various versions have
been observed to operate on a wide variety of host
computers, and other operating systems.",
acknowledgement = ack-nhfb,
affiliation = "GE Corp. Res. and Dev., Schenectady, NY, USA",
classification = "C6130D (Document processing techniques); C6150C
(Compilers, interpreters and other processors)",
keywords = "Compilers; Scribe; GNU Emacs; Document processing;
Composition engine; Mark-up commands; LISP; UNIX;
VAX/VMS",
thesaurus = "Program compilers; Word processing",
}
@TechReport{Carr:1989:GTP,
author = "D. J. Carr",
title = "Glue: a tree-based program development and maintenance
system which uses explicit, typed, higher order
cliches",
number = "UIUCDCS-R-89-1495",
institution = "University of Illinois at Urbana-Champaign",
address = "Urbana-Champaign, IL, USA",
pages = "50",
month = feb,
year = "1989",
bibdate = "Wed Oct 30 06:19:01 MST 1996",
abstract = "Describes a tree-based program development and
maintenance system, GLUE, which uses explicit, typed,
higher order cliches. A cliche is a standard method for
dealing with a task which consists of a set of roles
embedded in an underlying matrix. The roles represent
parts of the cliche that may change from use to use,
and the matrix specifies how these roles interact to
achieve the goal of the cliche. The GLUE system uses a
tree editor (TREEMACS) built on top of GNU Emacs. The
cliches are written in a functional language (ML) whose
base types are extended by the abstract syntax
categories of a target language (Pascal). Since cliches
are typed and of higher order, one can combine program
fragments in arbitrary ways. This permits great
flexibility in the way programs can be presented.",
acknowledgement = ack-nhfb,
classification = "C6115 (Programming support); C1160 (Combinatorial
mathematics)",
issuedby = "Univ. Illinois at Urbana-Champaign, IL, USA",
keywords = "Tree-based program development; Maintenance system;
GLUE; Higher order cliches; Tree editor; TREEMACS; GNU
Emacs; Functional language; ML; Abstract syntax
categories; Pascal",
pubcountry = "USA",
thesaurus = "Programming environments; Trees [mathematics]",
}
@Manual{Close:1989:GM,
author = "Diane Barlow Close",
title = "The {GAWK} manual",
organization = pub-FSF,
address = pub-FSF:adr,
edition = "0.12 Beta",
pages = "viii + 152",
month = oct,
year = "1989",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
keywords = "GNU Emacs (Computer program language); AWK (Computer
program language); Text editors (Computer programs)",
}
@Article{Crabb:1989:PWP,
author = "D. Crabb",
title = "A perfect word processor at last?",
journal = j-BYTE,
volume = "14",
number = "5",
pages = "157--158",
month = may,
year = "1989",
CODEN = "BYTEDJ",
ISSN = "0360-5280",
bibdate = "Wed Oct 30 06:19:01 MST 1996",
abstract = "According to the author Nisus is the perfect word
processing package. It is fully extensible and comes
with a complete macro programming capability similar to
GNU EMACS. It includes many functions for managing text
files. Nisus rounds out the feature list with some
elegant writer's tools: a thesaurus, a dictionary,
comparison operations, index and table-of-contents
generators, line numbering, unlimited Undos, 10
Clipboards, and a Get Info command. Like FullWrite, it
follows the practice of keeping the complete Font,
Size, and Style menus on the menu bar where they
belong, and not hidden in other menus like Word 3.02
does. Besides its text and document management power,
Nisus includes a bunch of desktop publishing and
graphics design features that position it squarely in
competition with FullWrite and Microsoft Word 4.0.",
acknowledgement = ack-nhfb,
classification = "C7106 (Word processing)",
keywords = "Word processor; Nisus; Word processing package; Macro
programming; Text files; Thesaurus; Dictionary;
Comparison operations; Index; Table-of-contents; Line
numbering; Undos; Clipboards; Get Info command; Desktop
publishing; Graphics design",
pubcountry = "USA",
thesaurus = "Software packages; Word processing",
}
@Article{Fiedler:1989:HGS,
author = "David Fiedler",
title = "How To Get Source From The {GNU} Project",
journal = j-CUJ,
volume = "7",
type = "On The Networks",
number = "1",
pages = "109--??",
month = jan,
year = "1989",
ISSN = "0898-9788",
bibdate = "Fri Aug 30 16:52:23 MDT 1996",
bibsource = "http://www.cuj.com/cbklist.htm",
acknowledgement = ack-nhfb,
}
@Article{Harrison:1989:IBP,
author = "Michael A. Harrison and Ethan V. Munson",
title = "On integrated bibliography processing",
journal = j-EPODD,
volume = "2",
number = "4",
pages = "193--209",
month = dec,
year = "1989",
CODEN = "EPODEU",
ISSN = "0894-3982",
bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/epodd.bib",
abstract = "Bibliography processing systems are important to the
production of scholarly and technical documents. While
the existing systems are a significant aid to authors,
their designs are not sufficient to handle the demands
that have arisen with their continued use. These
demands include larger bibliographic databases, sharing
of databases among multiple authors, integration with
document editors, and the desire for new features. This
paper examines these issues as they are reflected in
three enhancements to the bibliography processing
facilities of the GNU Emacs {\BibTeX}-Mode and
{\TeX}-Mode integrated editing environment. The added
features were a reference annotation facility, support
of forms-based queries for automatic citation, and an
enhanced reference inspection facility supporting
WYSIWYG display of references. The design and
implementation of the three features are discussed in
detail. Their relationship to other bibliography
processing tools is discussed.",
keywords = "Bibliography processing, Document processing,
Integrated systems, Annotations, Forms-based query,
Reference inspection",
}
@TechReport{Langmyhr:1989:TMG,
author = "Dag F. Langmyhr",
title = "Tekstredigering med {GNU-Emacs}",
type = "Kompendium",
number = "33",
institution = "Institutt for informatikk",
address = "Oslo, Norway",
pages = "49",
year = "1989",
bibdate = "Wed Oct 30 10:13:32 2002",
acknowledgement = ack-nhfb,
language = "Norwegian",
}
@TechReport{Liu:1989:ELR,
author = "Sying-Syang Liu and Roger Ogando",
title = "An {Emacs}-Based Logical Ripple Effect Analyzer
Prototype User's Manual",
number = "SERC-TR-32-F",
institution = "Software Engineering Research Centre",
address = "????",
month = sep,
year = "1989",
bibdate = "Mon Apr 21 19:19:53 1997",
bibsource = "Techreports/software-engineering-research-centre.bib",
abstract = "This paper describes a user's manual for a GNU
Emacs-based logical ripple effect analyzer prototype
which is currently running on a Unix BSD 4.1
environment. We expect no problem to port this
prototype to any other Unix systems as long as a GNU
Emacs version 18 is installed. With the aid of the
prototype, a user, typically a software developer or
programmer, can visualize and better predict the effect
of any changes made to a program. The programming
language supported is a subset of Ada languages at the
intraprocedural level.",
}
@InProceedings{Mangaser:1989:CPS,
author = "A. A. Mangaser and Y. Wang and S. E. Butner",
title = "Concurrent programming support for a multimanipulator
experiment on {RIPS}",
crossref = "IEEE:1989:PII",
pages = "853--859 (vol. 2)",
year = "1989",
bibdate = "Wed Oct 30 06:19:01 MST 1996",
note = "Three volumes.",
abstract = "The authors discuss a concurrent programming
environment and its application to a two-arm
cooperative manipulation experiment on RIPS (robot
instruction processing system). RIPS is a hierarchical
multiprocessor architecture in which various custom and
general-purpose processors are applied to a
partitioning of the robot control problem. The system
provides hardware support for synchronization and
communication primitives, making it easier to write
concurrent programs for RIPS' heterogeneous processors.
The experiment demonstrated the viability of RIPS in
supporting computationally intensive robot control
methodologies, and as a byproduct has helped to develop
a parallel programming environment for RIPS, called USE
RIPS (user software environment for RIPS). By building
USE RIPS on UNIX and using a layered approach, it is
possible to adapt or make use of various existing
programs and utilities, such as the GNU and C++
compilers.",
acknowledgement = ack-nhfb,
affiliation = "Center for Robotic Syst. in Microelectron., California
Univ., Santa Barbara, CA, USA",
classification = "C7420 (Control engineering); C3390 (Robotics); C5440
(Multiprocessor systems and techniques); C6115
(Programming support)",
keywords = "Problem partitioning; Decomposition; Multimanipulator
experiment; Concurrent programming environment; Two-arm
cooperative manipulation; Robot instruction processing
system; Hierarchical multiprocessor architecture;
Synchronization; Communication primitives;
Computationally intensive robot control methodologies;
Parallel programming environment; USE RIPS; User
software environment; UNIX; Layered approach; GNU; C++
compilers",
thesaurus = "C language; Hierarchical systems; Parallel processing;
Programming environments; Robots",
}
@Article{Miura:1989:AKD,
author = "K. Miura and K. Yonezawa and Y. Uesugi",
title = "Advanced {Kanji} display terminal",
journal = j-ANRITSU-TECHNICAL-BULL,
month = sep,
year = "1989",
CODEN = "ANTKAE",
ISSN = "0003-5211",
bibdate = "Wed Oct 30 06:13:54 MST 1996",
abstract = "An advanced kanji display terminal that is very
suitable for software design has been developed. The
terminal has the following features: (1) a
multi-terminal function permits handling of multi-port
data and multi-windows on a split screen; (2) the
51-row and 136 column display is sufficient for some
split-screen editors such as Emacs; and (3) the high
display quality is based on a noninterlaced high
refresh rate of 75 Hz and a 15-inch antiglare flat CRT.
Other factors that contribute to increased efficiency
for software design and a compact and attractive
appearance have been incorporated.",
acknowledgement = ack-nhfb,
classification = "B7260 (Display technology and systems)",
issue = "no.58 p. 63-71",
keywords = "Kanji display terminal; Multi-terminal function;
Multi-port data; Multi-windows; Split-screen editors;
Emacs; Noninterlaced high refresh rate; Antiglare flat
CRT; Software design",
language = "Japanese",
pubcountry = "Japan",
thesaurus = "Cathode-ray tube displays; Engineering workstations;
Flat panel displays",
}
@Article{Oman:1989:OLA,
author = "P. Oman",
title = "An objective look at {C++} environments",
journal = j-IEEE-SOFTWARE,
volume = "6",
number = "2",
pages = "100--103, 105",
month = mar,
year = "1989",
CODEN = "IESOEG",
ISSN = "0740-7459",
bibdate = "Wed Oct 30 06:19:01 MST 1996",
abstract = "The authors evaluated six C++ environments: three for
MS-DOS PCs, and three for mini and mainframe UNIX
systems. They tested the MS-DOS products-Advantage C++
Version 1.2 (beta2a), Guidelines C++ Version 1.2, and
Zortech C++ Version 1.05-on an 8-MHz, 80286-based PC
with a 44-Mbyte hard disk but with no math coprocessor.
They tested Oregon C++ Version 1.1C on a Sun-3 running
SunOS 3.5; GNU C++ on a Sequent Balance 21000 running
Dynix 3.0; and AT and T C++ on the Sequent, the Sun,
and on a Digital Equipment Corp. MicroVAX II running
UNIX 4.3 BSD. They believe, based on the results of
their study, that C++ will be the dominant
object-oriented language that industry uses for serious
software development.",
acknowledgement = ack-nhfb,
affiliation = "Dept. of Comput. Sci., Idaho Univ., Moscow, ID, USA",
classification = "C6140D (High level languages); C6150C (Compilers,
interpreters and other processors)",
keywords = "C++environments; MS-DOS; UNIX; Advantage C++ Version
1.2; Guidelines C++ Version 1.2; Zortech C++ Version
1.05; Oregon C++ Version 1.1C; Sun-3; SunOS 3.5; GNU
C++; Sequent Balance 21000; Dynix 3.0; AT and T C++;
Sequent; MicroVAX II; UNIX 4.3 BSD; Object-oriented
language",
pubcountry = "USA",
thesaurus = "C language; Object-oriented programming; Program
compilers; Programming environments",
}
@MastersThesis{Peltonen:1989:GEI,
author = "Kyle G. Peltonen",
title = "A {GNU Emacs} interface to the {Community Information
System} project",
type = "Thesis (B.S.)",
school = "Massachusetts Institute of Technology, Department of
Electrical Engineering and Computer Science",
address = "Cambridge, MA, USA",
pages = "3 + 26",
year = "1989",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
note = "Supervised by David K. Gifford.",
acknowledgement = ack-nhfb,
}
@InProceedings{Ritchie:1989:MEG,
author = "R. A. Ritchie and G. R. S. Weir",
title = "Menu-based extensions to {GNU} Emacs",
crossref = "Sutcliffe:1989:PCV",
pages = "245--257",
month = "",
year = "1989",
bibdate = "Wed Oct 30 06:04:36 MST 1996",
abstract = "Extensions to the GNU incarnation of the Emacs editing
system which provide facilities for menu-based
interaction is given. Following the Emacs philosophy,
the described system is designed to allow for
user-customisation and extension of menus, which are
sensitive to the user's editing mode. The system
affords pop-up and pull-right menus on SUN workstations
and terminal menus on the wide range of terminals
supported by Emacs. Additionally, a menu-based menu
design tool has been implemented. This provides
intelligent support to individual users who wish to
construct or alter menus. The operation of this Emacs
menu system is outlined and its range of facilities
described in detail.",
acknowledgement = ack-nhfb,
affiliation = "Scottish HCI Centre, Glasgow, UK",
classification = "C6180 (User interfaces); C6130 (Data handling
techniques); C6115 (Programming support)",
keywords = "GNU incarnation; Emacs editing system; Menu-based
interaction; Emacs philosophy; User-customisation;
Editing mode; Pull-right menus; SUN workstations;
Terminal menus; Menu-based menu design tool;
Intelligent support; Emacs menu system",
thesaurus = "Interactive systems; Microcomputer applications;
Software tools; Text editing; User interfaces",
}
@TechReport{Stallman:1989:GMGa,
author = "R. M. Stallman",
title = "{GDB} Manual (The {GNU} Source-Level Debugger)",
institution = pub-FSF,
address = pub-FSF:adr,
month = jan,
year = "1989",
bibsource = "Misc/debug.bib",
note = "Third Edition, GDB version 3.1.",
}
@Manual{Stallman:1989:GMGb,
author = "Richard Stallman",
title = "{GDB} manual: the {GNU} source-level debugger",
organization = pub-FSF,
address = pub-FSF:adr,
edition = "Third, {GDB} version 3.4",
pages = "iv + 76",
month = oct,
year = "1989",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
keywords = "GNU Emacs (Computer program)",
}
@Manual{Stallman:1989:GMP,
author = "Richard Stallman and Roland McGrath",
title = "{GNU} make: a program for directing recompilation",
organization = pub-FSF,
address = pub-FSF:adr,
edition = "0.25 {Beta} for make, {Version 3.57 Beta}",
pages = "vi + 118",
day = "24",
month = oct,
year = "1989",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
keywords = "GNU Emacs (Computer program); Text editors (Computer
programs)",
}
@Article{Udell:1989:ETE,
author = "J. Udell",
title = "Extensible text editors for programmers",
journal = j-BYTE,
volume = "14",
number = "3",
pages = "197--198, 200--202, 204",
month = mar,
year = "1989",
CODEN = "BYTEDJ",
ISSN = "0360-5280",
bibdate = "Wed Oct 30 06:19:01 MST 1996",
abstract = "Looks at four popular text editors-BRIEF 2.1 (US\$195,
Solution Systems), EMACS 1.2 (US\$325, UniPress),
Epsilon 3.2 (US\$195, Lugaru), and ME 2.1 (US\$89,
Magma). These editors are specialized for programmers
editing source code, and that means they're line, not
paragraph, oriented. They all run on a standard IBM PC
or compatible; EMACS needs at least 384 Kbytes of RAM,
and Epsilon, ME, and BRIEF will run in 256 Kbytes. And
these text editors let you customize them in nearly
limitless ways. Each of them manages the complexity of
customization by dividing itself into the kernel and
user layers. The kernel is the executable file you run
from the DOS command line. It manages machine
resources, implements basic operations involving files,
buffers, and windows, and supports the user layer. The
user layer is a set of files containing code written in
the editor's extension language and executed by the
kernel. It implements key bindings, search-and-replace
protocols, and language-sensitive modes.",
acknowledgement = ack-nhfb,
classification = "C6130D (Document processing techniques); C6115
(Programming support)",
keywords = "Line oriented editor; Text editors; BRIEF 2.1; EMACS
1.2; Epsilon 3.2; ME 2.1; Programmers; Editing source
code; 384 Kbytes; 256 Kbytes; Kernel; User layer;
Extension language; 256 KB; 384 KB",
numericalindex = "Memory size 2.62E+05 Byte; Memory size 3.93E+05
Byte",
pubcountry = "USA",
thesaurus = "Software packages; Software tools; Text editing",
}
@Article{Volkman:1989:BGB,
author = "Victor R. Volkman",
title = "Bison: {A GNU} Breed Of {YACC}",
journal = j-CUJ,
volume = "7",
number = "8",
pages = "117--??",
month = aug,
year = "1989",
ISSN = "0898-9788",
bibdate = "Fri Aug 30 16:52:23 MDT 1996",
bibsource = "http://www.cuj.com/cbklist.htm",
acknowledgement = ack-nhfb,
}
@InProceedings{Clarkson:1990:PRE,
author = "M. Clarkson",
title = "Praxis: a rule-based expert system for {MACSYMA}",
crossref = "Miola:1990:DIS",
pages = "264--265",
month = "",
year = "1990",
bibdate = "Wed Oct 30 06:09:12 MST 1996",
abstract = "The author introduces the need for improved user
interfaces to computer algebra systems. He then
describes Praxis. The system is a synthesis of three
separate sub-systems; a Computer Algebra System using
the symbolic algebra system MACSYMA, a Rule-Based
Expert System using the Personal Consultant Expert
System from Texas Instruments, and an On-line Help
System using the GNU Emacs {\TeX}Info system. The
rule-based system prompts the user for a definition of
what he or she wants to do, which becomes the goal of
the consultation. This goal is refined by a series of
questions posed in the form of multiple choice menus.
The information in the menus is structured similarly to
an algebra and calculus textbook, and its organization
is intended to be intuitively apparent to a physical
scientist. The system requires very little knowledge of
the syntax or functions of the underlying CA system,
making it suitable for the novice user. At the same
time, it is an organized catalogue of most of the
functions and variables available in MACSYMA, and is
therefore useful to the more advanced user. The system
has been integrated with a context sensitive on-line
help system at every point in the consultation.",
acknowledgement = ack-nhfb,
affiliation = "ISTS, York Univ., North York, Ont., Canada",
classification = "C7310 (Mathematics); C6180 (User interfaces); C6170
(Expert systems)",
keywords = "User interfaces; Computer algebra systems; Computer
Algebra System; Symbolic algebra system; MACSYMA;
Rule-Based Expert System; Personal Consultant Expert
System; On-line Help System; GNU Emacs {\TeX}Info
system; Consultation; Multiple choice menus; Context
sensitive on-line help system",
thesaurus = "Knowledge based systems; Mathematics computing;
Software packages; Symbol manipulation; User
interfaces",
}
@Article{Cramer:1990:SMC,
author = "M. Cramer",
title = "Structure and mnemonics in computer and command
languages",
journal = j-INT-J-MAN-MACHINE-STUDIES,
volume = "32",
number = "6",
pages = "707--722",
month = jun,
year = "1990",
CODEN = "IJMMBC",
ISSN = "0020-7373",
bibdate = "Wed Oct 30 06:13:54 MST 1996",
abstract = "Payne and Green (1986) proposed the task action
grammar (TAG) as a formalism for the evaluation of
command language organization. TAG is a competence
model of command language organization which emphasizes
the structural organization of the command language.
That is, a group of commands all with the same form but
differing values is predicted to be easier to use than
one where each command of the group has a unique
pattern of values. The four test command languages they
used were: 'structure and mnemonics'; 'structure only';
'mnemonics only'; and a version of the EMACS editor
command language. A fifth language was added to the
testing, 'neither structure nor mnemonics'. Contrary to
the original results, in the replication, the
structural factor was not a significant factor. In
fact, the structure-only language, the EMACS variant
and the language with neither structure nor mnemonics
were not significantly different. Considering only the
languages with structure, the use of word abbreviations
as mnemonics appears to be more effective than the use
of graphical symbols. As TAG depends on the explanation
of the importance of structure, this finding raises
questions as to its utility. A categorization exercise
gave the only result which showed any influence of the
structure factor. If TAG does provide a performance
model of command languages, it appears to have much
less influence on the user's performance than some
types of mnemonics. The EMACS variant has more complex
organization than any other of the test languages. The
test results do not show that the subjects were able to
use the clues provided.",
acknowledgement = ack-nhfb,
affiliation = "Dept. of Comp. Sci., Waterloo Univ., Ont., Canada",
classification = "C6140 (Programming languages); C6180 (User
interfaces); C6130D (Document processing techniques)",
keywords = "Computer languages; Language structure; Ease of use;
Mnemonics; Task action grammar; Competence model;
Command language organization; Structural organization;
EMACS editor; Word abbreviations; Graphical symbols;
Categorization; Structure factor; Performance model;
Clues",
pubcountry = "UK",
thesaurus = "Grammars; Macros; Programming languages; Text editing;
User interfaces",
}
@InProceedings{Deodhar:1990:GAI,
author = "S. Deodhar",
booktitle = "ACE '90. Proceedings of [XVI Annual Convention and
Exhibition of the IEEE In India]",
title = "{GNU-Aid}: Intelligent computer aided instruction
system",
publisher = pub-IEEE,
address = pub-IEEE:adr,
pages = "14--16",
year = "1990",
CODEN = "????",
ISSN = "????",
bibdate = "Sat Jul 16 17:20:12 MDT 2005",
bibsource = "http://ieeexplore.ieee.org/",
acknowledgement = ack-nhfb,
}
@Manual{Donnelly:1990:BYP,
author = "Charles Donnelly and Richard Stallman",
title = "{Bison}: the {Yacc-compatible} parser generator",
organization = pub-FSF,
address = pub-FSF:adr,
edition = "{Bison Version} 1.12",
pages = "iv + 96",
month = dec,
year = "1990",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
keywords = "Bison (Computer grammar); Yacc (Computer grammar); GNU
Emacs (Computer program language); Parsing (Computer
grammar)",
}
@Article{Fraser:1990:LTE,
author = "C. W. Fraser and B. Krishnamurthy",
title = "Live text (editing)",
journal = j-SPE,
volume = "20",
number = "8",
pages = "851--858",
month = aug,
year = "1990",
CODEN = "SPEXBL",
ISSN = "0038-0644",
bibdate = "Wed Oct 30 06:13:54 MST 1996",
abstract = "Describes a software package that allows the user to
edit the output of several common software tools and to
cause the changes to be written back to the input
files. For example, it is possible to edit the output
of a spelling checker and have the changes propagated
back to the source files. This technique makes some
corrections simpler and more direct. A trial
implementation is embedded in Emacs.",
acknowledgement = ack-nhfb,
affiliation = "AT and T Bell Labs., Murray Hill, NJ, USA",
classification = "C6130 (Data handling techniques); C6115 (Programming
support)",
keywords = "Written back changes; Live text; Software package;
Edit; Software tools; Input files; Corrections; Emacs",
pubcountry = "UK",
thesaurus = "Software packages; Software tools; Text editing",
}
@TechReport{Hammerslag:1990:TET,
author = "D. H. Hammerslag",
title = "Treemacs: an extensible tree editor",
number = "UIUCDCS-R-90-1600",
institution = "University of Illinois at Urbana-Champaign",
address = "Urbana-Champaign, IL, USA",
pages = "vi + 150",
month = may,
year = "1990",
bibdate = "Wed Oct 30 06:13:54 MST 1996",
abstract = "The kinds of applications that a general purpose tree
editor can support include: proof trees, document
trees, transformation trees, outlines, abstract syntax
trees, and high-level program development trees. A
general purpose tree editor must include the following
features. It must not be restricted to applications
where the trees are defined by formal grammars. On the
other hand, it must be able to check and/or enforce
structural constraints on trees. It must allow for
varying the representation of trees both within and
between applications. It must be extensible and
customizable. It must be possible to vary the time(s)
at which structure constraints are checked: continually
(i.e. at each tree modification), by user command, or
something in between. The author has developed such a
general purpose editor by starting from the extensible
text editor Emacs and extending it with a tree data
type and a customizable, extensible tree display
algorithm. A number of applications have been written
by the author and others. Among the applications
written by the author is one for editing abstract
syntax trees. This is a difficult application from
various points of view and has the particular advantage
that it allows for 'head-to-head' comparisons with
grammar based editors.",
acknowledgement = ack-nhfb,
classification = "C6130D (Document processing techniques); C6120 (File
organisation)",
issuedby = "Univ. Illinois at Urbana-Champaign, IL, USA",
keywords = "Treemacs; Extensible tree editor; Proof trees;
Document trees; Transformation trees; Outlines;
Abstract syntax trees; High-level program development
trees; General purpose tree editor; Structural
constraints; User command; Extensible text editor;
Emacs; Tree data type; Extensible tree display
algorithm",
pubcountry = "USA",
thesaurus = "Data structures; Software packages; Text editing;
Trees [mathematics]; User manuals",
}
@InProceedings{Kislitzin:1990:NMS,
author = "K. Kislitzin",
title = "Network monitoring by scripts",
crossref = "Anonymous:1990:UAP",
pages = "101--105",
month = "",
year = "1990",
bibdate = "Wed Oct 30 06:04:36 MST 1996",
abstract = "Several network monitoring tools written in sh and
gawk are described. These tools include a ping-based
diagnostic report, a network availability metric and an
ftp throughput report. The tools were developed for the
Numerical Aerodynamic Simulation (NAS) Facility at the
NASA Ames Research Center, a pathfinder in numerical
aerodynamic simulation methods. One aspect of achieving
that goal is a commitment to having the fastest
machines in the world and a network which can support
them. The NAS high speed processors consist of a Cray
Y-MP and a Cray-2. In addition, there are several
highly parallel machines.",
acknowledgement = ack-nhfb,
affiliation = "Comput. Sci. Corp., Moffett Field, CA, USA",
classification = "B6210L (Computer communications); C5620 (Computer
networks and techniques); C6150J (Operating systems);
C7460 (Aerospace engineering)",
keywords = "Network monitoring tools; Sh; Gawk; Ping-based
diagnostic report; Network availability metric; Ftp
throughput report; Numerical Aerodynamic Simulation;
Numerical aerodynamic simulation methods; NAS high
speed processors; Cray Y-MP; Cray-2; Highly parallel
machines",
thesaurus = "Aerospace computing; Computer networks; Computerised
monitoring; Network operating systems; Supervisory
programs",
}
@MastersThesis{Klingler:1990:SSE,
author = "Carol Diane Klingler",
title = "Syntax-directed semantics-supported editing of
algebraic specifications",
type = "Project report (M.S.)",
school = "Virginia Polytechnic Institute and State University",
address = "Blacksburg, VA, USA",
pages = "xi + 131",
year = "1990",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
keywords = "GNU Emacs (Computer program); Text editors (Computer
programs)",
}
@InProceedings{Kopec:1990:EIT,
author = "G. E. Kopec and S. C. Bagley",
title = "Editing images of text",
crossref = "Furuta:1990:EPI",
pages = "207--220",
month = "",
year = "1990",
bibdate = "Wed Oct 30 06:09:12 MST 1996",
abstract = "Most document recognition systems are based on the
paradigm of format conversion, in which scanned
document images are converted into a structured
symbolic description which can be manipulated by a
conventional document processing system. While this
approach is attractive in many respects, there are
situations in which complete recognition and format
conversion is either unnecessary or very difficult to
achieve with sufficient accuracy. The authors describe
Image EMACS, a text editor for binary document images
which illustrates an alternative to the format
conversion paradigm. The inputs and outputs of Image
EMACS are scanned images of text and the primary
document representation within Image EMACS is the image
itself, rather than a symbolic description of it. The
goal of Image EMACS is to allow images of text to be
created and manipulated as if they were conventional
text files. The central insight behind Image EMACS is
that many text editing operations may be implemented
directly in terms of geometrical operations on image
blobs, without explicit knowledge of the symbolic
character labels (i.e. without character
recognition).",
acknowledgement = ack-nhfb,
affiliation = "Xerox Palo Alto Res. Center, CA, USA",
classification = "C6130B (Graphics techniques); C7230 (Publishing and
reproduction); C5260B (Computer vision and picture
processing)",
keywords = "Document recognition systems; Image EMACS; Text
editor; Binary document images; Scanned images;
Document representation; Text editing operations;
Geometrical operations; Image blobs; Symbolic character
labels",
thesaurus = "Document image processing; Electronic publishing; Text
editing",
}
@Manual{Kotz:1990:GTV,
author = "David Kotz",
title = "{GNUPLOT \LaTeX} Tutorial Version 2.0",
organization = "Computer Science Department, Duke University",
address = "Durham, NC, USA",
month = feb,
year = "1990",
note = "See also \cite{Williams:1990:GIP}.",
acknowledgement = ack-nhfb,
}
@Article{Krishnamurthy:1990:BSP,
author = "S. M. Krishnamurthy",
title = "A brief survey of papers on scheduling for pipelined
processors",
journal = j-SIGPLAN,
volume = "25",
number = "7",
pages = "97--106",
month = jul,
year = "1990",
CODEN = "SINODQ",
ISSN = "0362-1340",
bibdate = "Wed Oct 30 06:13:54 MST 1996",
abstract = "Most microprocessors introduced into the market employ
pipelining to enhance execution speed. Moreover, many
of these processors use multiple pipelined functional
units. This paper surveys several heuristics reported
in the literature on the topic of code optimization and
reordering for exploiting instruction level parallelism
in pipelined processors. Five methods are described in
detail and several others are briefly reviewed.",
acknowledgement = ack-nhfb,
affiliation = "Dept. of Comput. Sci., Clemson Univ., SC, USA",
classification = "C6110 (Systems analysis and programming); C5220
(Computer architecture); C4240 (Programming and
algorithm theory)",
keywords = "DAG; GNU instruction scheduler; MIPS-X reorganiser;
Scheduling; Microprocessors; Multiple pipelined
functional units; Code optimization; Instruction level
parallelism; Pipelined processors",
pubcountry = "USA",
thesaurus = "Optimisation; Parallel programming; Pipeline
processing; Reviews; Scheduling",
}
@Book{Lewis:1990:GEL,
author = "Bil Lewis and Daniel LaLiberte and {GNU Manual
Group}",
title = "{GNU} Emacs Lisp reference manual",
publisher = pub-FSF,
address = pub-FSF:adr,
edition = "1.03",
pages = "xiv + 570",
month = dec,
year = "1990",
ISBN = "1-882114-10-8",
ISBN-13 = "978-1-882114-10-8",
LCCN = "????",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
annote = "GNU Emacs Version 18 for UNIX users.",
keywords = "GNU Emacs (Computer program); Emac Lisp (Computer
program language); Text editors (Computer programs)",
}
@InProceedings{Li:1990:CTC,
author = "C.-C. J. Li and W. K. Fuchs",
title = "{CATCH} --- compiler-assisted techniques for
checkpointing",
crossref = "IEEE:1990:DPF",
pages = "74--81",
month = "",
year = "1990",
bibdate = "Wed Oct 30 06:09:12 MST 1996",
abstract = "A compiler-based approach to generating efficient
checkpoints for process recovery is described. The
presented approach to checkpointing is programmer,
operating system, and hardware transparent.
Compile-time information is exploited to maintain the
desired checkpoint interval and to reduce the size of
checkpoints. Compiler-generated sparse potential
checkpoint code is used to maintain the desired
checkpoint interval. Adaptive checkpointing has been
developed to reduce the size of checkpoints by
exploiting potentially large variations in memory
usage. A training technique is used in selecting the
low-cost, high-coverage potential checkpoints. Since
the potential checkpoint selection problem is
NP-complete, a heuristic algorithm has been developed
to obtain a quick suboptimal solution. These
compiler-assisted checkpointing techniques have been
implemented in a modified version of the GNU C (GCC)
compiler version of 1.34. Experiments utilizing the
CATCH GCC compiler on SUN workstations are described.",
acknowledgement = ack-nhfb,
affiliation = "Center for Reliable and High-Performance Comput.,
Illinois Univ., Urbana, IL, USA",
classification = "C6110B (Software engineering techniques); C5470
(Performance evaluation and testing); C4240
(Programming and algorithm theory)",
keywords = "CATCH; Compiler-assisted techniques; Checkpointing;
Process recovery; Sparse potential checkpoint code;
Training technique; NP-complete; Heuristic algorithm;
GNU C; SUN workstations",
thesaurus = "Computational complexity; Fault tolerant computing;
Software engineering",
}
@InProceedings{Muller:1990:PAU,
author = "H. Muller and J. Winckler and S. Grzybek and M. Otte
and B. Stoll and F. Equoy and N. Higelin",
title = "{PASTIS}-program animation using {X}",
crossref = "Anonymous:1990:EXW",
pages = "104--111",
month = "",
year = "1990",
bibdate = "Wed Oct 30 06:04:36 MST 1996",
abstract = "The software animation system PASTIS (Program
Animation System with Interactive Solutions) for
program animation with emphasis on the visualization of
the dynamic behavior of algorithms and data structures
is presented. Its main properties are unmodified source
code of the visualized program, concurrent multiple and
hierarchical views on algorithms and data structures,
and interactive alterations of views during run time.
The interface between program and animations is a
relational data model. PASTIS is distinguished by high
modularity and strict separation of its components.
This makes it particularly suitable for distributed
computing environments. A prototype of PASTIS was
implemented under UNIX using the GNU source level
debugger gdb and the X-window system.",
acknowledgement = ack-nhfb,
affiliation = "Inst. fur Inf., Freiburg Univ., Germany",
classification = "C6115 (Programming support); C6180G (Graphical user
interfaces); C6130B (Graphics techniques)",
keywords = "Concurrent views; Software animation system; PASTIS;
Program animation; Visualization; Dynamic behavior;
Algorithms; Data structures; Hierarchical views;
Interactive alterations; Relational data model;
Modularity; Distributed computing environments; UNIX;
GNU source level debugger; Gdb; X-window system",
thesaurus = "Computer animation; Data structures; Graphical user
interfaces; Visual programming",
}
@InProceedings{Olsson:1990:DAG,
author = "Ronald A. Olsson and Richard H. Crawford and W. Wilson
Ho",
booktitle = "Proceedings of the 1990 Usenix Summer Conference,
Anaheim, CA",
title = "Dalek: {A GNU}, Improved Programmable Debugger",
publisher = pub-USENIX,
address = pub-USENIX:adr,
pages = "221--232",
month = jun,
year = "1990",
bibsource = "Misc/usenix.bib, Misc/debug.bib",
}
@InProceedings{Olsson:1990:DGI,
author = "Ronald A. Olsson and Richard H. Crawford and W. Wilson
Ho",
title = "{Dalek}: {A GNU}, Improved Programmable Debugger",
crossref = "USENIX:1990:PSU",
pages = "221--232",
month = "Summer",
year = "1990",
bibdate = "Fri Oct 18 07:24:24 MDT 1996",
bibsource = "ftp://ftp.uu.net/library/bibliography",
acknowledgement = ack-nhfb,
affiliation = "University of California --- Davis",
}
@InProceedings{Schmidt:1990:GPH,
author = "D. C. Schmidt",
title = "gperf: a perfect hash function generator",
crossref = "Anonymous:1990:UCC",
pages = "87--101",
month = "",
year = "1990",
bibdate = "Wed Oct 30 06:04:36 MST 1996",
abstract = "gperf is a perfect hash function generator written in
C++. It translates an $n$-element user-specified
keyword set $W$ into a perfect hash function $F$. $F$
uniquely maps keywords in $W$ onto the range
$0\ldots{}k-1$, where $k\ge{}n$. If $k=n$ then $F$ is a
minimal perfect hash function. gperf generates a
$k$-element static lookup table and either a pair of C
functions or a C++ class. The generated code determines
whether any particular string $s$ occurs in $W$, using
at most one probe into the lookup table. gperf
currently generates the reserved keyword recognizer for
lexical analyzers in several production and research
compilers and language processing tools, including GNU
C, GNU C++, GNU Pascal, GNU Modula 3, and GNU indent.
The paper provides an overview of perfect hashing and
discusses the impact of C++ on the overall program
design and maintenance effort. It also describes the
interface, features, and implementation strategies
incorporated in gperf and presents the results from an
empirical comparison between gperf-generated
recognizers and several other typical reserved word
lookup techniques.",
acknowledgement = ack-nhfb,
affiliation = "Dept. of Inf. and Comput. Sci., California Univ.,
Irvine, CA, USA",
classification = "C6120 (File organisation); C6110J (Object-oriented
programming)",
keywords = "Perfect hash function generator; Gperf; C++;
User-specified keyword set; Static lookup table;
Lexical analyzers; Compilers; Language processing
tools; GNU C; GNU C++; GNU Pascal; GNU Modula 3; GNU
indent; Perfect hashing; Program design",
thesaurus = "C language; File organisation; Object-oriented
programming; Table lookup",
}
@Article{Schumacker:1990:UIS,
author = "F. Schumacker",
title = "User-friendly interface with a set of {LOTOS} tools",
journal = j-BULL-SCI-ASSOC-INGEN-ELECTRICIENS-MONTEFIORE,
volume = "103",
number = "1",
pages = "3--20",
month = "",
year = "1990",
CODEN = "BURMA2",
ISSN = "0302-2676",
bibdate = "Wed Oct 30 06:13:54 MST 1996",
abstract = "In the context of the SEDOS project (software
environment for the design of open distributed
systems), the author reviews the status of software
tools for a formal description language based on
extended concepts of calculus of communicating systems
(CCS) rather than extended-state machine modelling. The
objective is to assess the feasibility of an integrated
workstation for use by students of a computer network
protocol course. Advantages of the algebraic approach
to LOTUS (language of temporal ordering specification)
are enumerated, and the process of protocol development
is explained. Six tools, ranging from a syntax verifier
to a specification simulator, are described and
attempts at integration summarised. The broad outline
of the proposed workstation is sketched, and a
prototype leading to a user-friendly interface by way
of the SunView graphics integrator is discussed. The
GNU Emacs LISP syntactic editor is utilised with some
adaptation for an Integrated LOTOS Toolset program
written mainly in C.",
acknowledgement = ack-nhfb,
affiliation = "Li{\`e}ge Univ., Belgium",
classification = "C6115 (Programming support); C5540 (Terminals and
graphic displays); C0220 (Education and training);
C5620 (Computer networks and techniques); C5430
(Microcomputers)",
keywords = "User interfaces: educational courses; LOTOS; SEDOS
project; Open distributed systems; Software tools;
Formal description language; Calculus of communicating
systems; Workstation; Students; Computer network
protocol course; Syntax verifier; Specification
simulator; SunView graphics integrator; GNU Emacs LISP
syntactic editor; C",
language = "French",
pubcountry = "Belgium",
thesaurus = "Educational courses; Protocols; Software packages;
Software tools; User interfaces; Workstations",
}
@Article{Smith:1990:EET,
author = "Norman E. Smith",
title = "Emulating {EMACS} with {TPU}",
journal = j-VAX-PROF,
volume = "12",
number = "4",
pages = "22--26",
month = "",
year = "1990",
CODEN = "VAXPEN",
ISSN = "8750-9628",
bibdate = "Wed Oct 30 06:13:54 MST 1996",
abstract = "The EMACS text editor provides mnemonic commands and
split-screen editing. The paper discusses TEMACS, which
implements much of the EMACS text editor command
structure in TPU. It runs on a computer system
comprising a VAXcluster, an HSC-50/RA-81/RA-82 disk
farm and several terminal servers connected with
Ethernet. The cluster runs VMS Version 4.7.",
acknowledgement = ack-nhfb,
affiliation = "Sci. Applications Int. Corp., Oak Ridge, TN, USA",
classification = "C6130 (Data handling techniques)",
keywords = "EMACS text editor; Mnemonic commands; Split-screen
editing; TEMACS; TPU; VAXcluster; HSC-50/RA-81/RA-82
disk farm; Terminal servers; Ethernet; VMS Version
4.7",
pubcountry = "USA",
thesaurus = "Text editing",
}
@InProceedings{Thompson:1990:KLEa,
author = "T. Thompson",
title = "{Keynote} --- a language and extensible graphic editor
for music",
crossref = "Anonymous:1990:PWU",
pages = "89--100",
month = "",
year = "1990",
bibdate = "Wed Oct 30 06:09:12 MST 1996",
abstract = "Keynote is a programming language for manipulating and
generating music and MIDI-compatible equipment. It was
developed for and in the style of the UNIX software
system-an application-specific 'little language' and
interactive shell. Most obviously used for algorithmic
music composition, Keynote also serves as a more
general utility for realtime and non-realtime MIDI data
manipulation. By adding only a few built-in functions
to the language, a graphic interface was added to
Keynote. This built-in graphic interface did not,
however, build-in any particular user interface. All of
the nested pop-up menus and operations of a graphical
music editor have been implemented in the Keynote
language itself. The result is an extensible tool,
similar in spirit to the Lisp-based extensibility of
emacs and easily modified and enhanced by end users.",
acknowledgement = ack-nhfb,
affiliation = "AT and T Bell Labs., Holmdel, NJ, USA",
classification = "C7820 (Humanities); C6140D (High level languages);
C6150J (Operating systems); C6180 (User interfaces);
C6130B (Graphics techniques)",
keywords = "Musical instrument digital interface; Extensible
graphic editor; Programming language; MIDI-compatible
equipment; UNIX software system; Little language;
Interactive shell; Algorithmic music composition;
Keynote; General utility; Non-realtime MIDI data
manipulation; Built-in functions; Graphic interface;
Nested pop-up menus; Graphical music editor; Extensible
tool; Lisp-based extensibility; Emacs",
thesaurus = "Graphical user interfaces; High level languages;
Music; UNIX",
}
@Article{Thompson:1990:KLEb,
author = "T. Thompson",
title = "{Keynote} --- a language and extensible graphic editor
for music",
journal = j-COMP-SYS,
volume = "3",
number = "2",
pages = "331--357",
month = "Spring",
year = "1990",
CODEN = "CMSYE2",
ISSN = "0895-6340",
bibdate = "Wed Oct 30 06:13:54 MST 1996",
abstract = "Keynote is a programming language for manipulating and
generating music with MIDI-compatible equipment. It was
designed for and in the style of the UNIX software
system, as an application-specific 'little language'
and interactive shell. Most obviously used for
algorithmic music composition, Keynote also serves as a
more general utility for non-realtime and realtime MIDI
data manipulation. By adding only a few functions to
the language, a graphic interface was recently added.
This built-in graphic interface did not, however,
build-in any particular user interface. All the nested
pop-up menus and operations of a graphical music editor
have been implemented in the Keynote language itself.
The result is an extensible tool, similar in spirit to
the Lisp-based extensibility of emacs, easily modified
and enhanced by end users.",
acknowledgement = ack-nhfb,
affiliation = "AT and T Bell Lab., Murray Hill, NJ, USA",
classification = "B6450F (Sound synthesisers); C7820 (Humanities);
C6140D (High level languages); C6130B (Graphics
techniques); C6180 (User interfaces)",
keywords = "Extensible graphic editor; Music; Programming
language; Generating music; MIDI-compatible equipment;
UNIX software system; Algorithmic music composition;
Keynote; MIDI data manipulation; Graphic interface;
Nested pop-up menus; Extensible tool; Emacs",
pubcountry = "USA",
thesaurus = "Computer aided analysis; Computer graphics; High level
languages; Music; User interfaces",
}
@InProceedings{Tiemann:1990:EHI,
author = "M. D. Tiemann",
title = "An exception handling implementation for {C++}",
crossref = "Anonymous:1990:UCC",
pages = "215--232",
month = "",
year = "1990",
bibdate = "Wed Oct 30 06:04:36 MST 1996",
abstract = "Outlines a design for an exception handling mechanism
that has been implemented in GNU C++, a free,
native-code C++ compiler. Various alternatives for
handling exceptions are presented. An abstraction is
derived which solves problems with existing C/C++
solutions. The abstraction is flexible, type-safe,
works in a mixed language execution environment. Two
implementations are presented: one which can be
implemented by a C++ to C translator, the other which
can be implemented to run efficiently under a
native-code compiler. The paper concludes with a brief
survey of other exception handling designs.",
acknowledgement = ack-nhfb,
classification = "C6140D (High level languages); C6150C (Compilers,
interpreters and other processors)",
keywords = "Exception handling mechanism; GNU C++; C++ compiler;
Abstraction; Mixed language execution environment; C++
to C translator; Native-code compiler",
thesaurus = "C language; Error handling; Object-oriented
programming; Program compilers",
}
@Article{Wendt:1990:FCG,
author = "Alan L. Wendt",
title = "Fast code generation using automatically-generated
decision trees",
journal = j-SIGPLAN,
volume = "25",
number = "6",
pages = "9--15",
month = jun,
year = "1990",
CODEN = "SINODQ",
ISBN = "0-89791-364-7",
ISBN-13 = "978-0-89791-364-5",
ISSN = "0362-1340",
bibdate = "Sun Dec 14 09:15:53 MST 2003",
bibsource = "http://portal.acm.org/; Compendex database;
http://www.acm.org/pubs/contents/proceedings/pldi/93542/index.html",
URL = "http://www.acm.org:80/pubs/citations/proceedings/pldi/93542/p9-wendt/",
abstract = "Several recent code generators [4,5,6,8] use DAG
rewriting rules to accomplish both code generation and
peephole optimization, and they compile these rules
into hard code to generate code quickly. The chop
system [6], for example, runs twice as fast as both pcc
and the GNU C compiler gcc on a Sun 3/50 system and
generates comparable code. These figures are for entire
compilers; the code generators themselves run about
seven times faster than comparable code generators.
This paper describes a new system, currently under
development, that further increases the speed of
automatically-generated retargetable code generation.
It offers two principal advantages over its
predecessors.",
acknowledgement = ack-nhfb,
affiliation = "Colorado State Univ",
affiliationaddress = "Fort Collins, CO, USA",
annote = "Published as part of the Proceedings of PLDI'90.",
classification = "722; 723",
conference = "Proceedings of the ACM SIGPLAN '90 Conference on
Programming Language Design and Implementation",
conferenceyear = "1990",
journalabr = "SIGPLAN Not",
keywords = "algorithms; Code Generation; Computer Operating
Systems --- Program Compilers; Computer Programming
Languages; Decision Trees; Design; performance;
theory",
meetingaddress = "White Plains, NY, USA",
meetingdate = "Jun 20--22 1990",
meetingdate2 = "06/20--22/90",
sponsor = "Assoc for Computing Machinery, Special Interest Group
on Programming Languages",
subject = "{\bf D.3.4} Software, PROGRAMMING LANGUAGES,
Processors, Code generation. {\bf D.3.4} Software,
PROGRAMMING LANGUAGES, Processors, Compilers. {\bf
F.4.2} Theory of Computation, MATHEMATICAL LOGIC AND
FORMAL LANGUAGES, Grammars and Other Rewriting Systems.
{\bf D.3.4} Software, PROGRAMMING LANGUAGES,
Processors, Optimization.",
}
@Manual{Williams:1990:GIP,
author = "Thomas Williams and Colin Kelley and John Campbell and
David Kotz and Russell Lang",
title = "{GNUPLOT}\emdash An Interactive Plotting Program",
organization = pub-FSF,
address = pub-FSF:adr,
day = "31",
month = aug,
year = "1990",
note = "Available in several Internet archives, including the
Free Software Foundation collection on
\path|prep.ai.mit.edu|. GNUPLOT can produce output for
many different devices, including {\LaTeX} picture
mode, {\PS}, and the X Window System. See also
\cite{Kotz:1990:GTV}.",
acknowledgement = ack-nhfb,
}
@Article{Withers:1990:CG,
author = "Robert Withers",
title = "{CUG333 gAWK}",
journal = j-CUJ,
volume = "8",
type = "CUG New Release",
number = "12",
pages = "126--??",
month = dec,
year = "1990",
ISSN = "0898-9788",
bibdate = "Fri Aug 30 16:52:23 MDT 1996",
bibsource = "http://www.cuj.com/cbklist.htm",
acknowledgement = ack-nhfb,
}
@Article{Yang:1990:ERP,
author = "Y. Yang",
title = "Experimental rapid prototype of undo support",
journal = j-INFO-SOFTWARE-TECH,
volume = "32",
number = "9",
pages = "625--635",
month = nov,
year = "1990",
CODEN = "ISOTE7",
ISSN = "0950-5849",
bibdate = "Wed Oct 30 06:09:12 MST 1996",
abstract = "Rapid prototyping techniques and informal evaluation
methods were used to improve the design of an
undo-support facility in GNU Emacs. The paper
elucidates that prototyping strategy, which used a
production system architecture. The configuration of
the prototype is outlined and the ways in which its
components interact with each other described.
Techniques to construct each component are then
discussed. After the prototype was built, an informal
post-mortem evaluation was conducted. The results of
this evaluation are analysed and their implications
explored.",
acknowledgement = ack-nhfb,
affiliation = "Dept. of Inf., Rutherford Appleton Lab., UK",
classification = "C6110 (Systems analysis and programming)",
keywords = "Rapid prototype; Informal evaluation methods; GNU
Emacs; Production system architecture",
pubcountry = "UK",
thesaurus = "Systems analysis",
}
@Article{Bagley:1991:ATI,
author = "S. C. Bagley and G. E. Kopec",
title = "Applications of text image editing",
journal = j-PROC-SPIE,
volume = "1460",
pages = "71--79",
month = "",
year = "1991",
CODEN = "PSISDG",
ISSN = "0277-786X",
bibdate = "Wed Oct 30 06:04:36 MST 1996",
abstract = "The paper presents several applications illustrating
an approach to scanned text processing in which
document processing operations are performed on image
elements extracted from the scanned document image. The
central and novel insight is that many document
processing operations may be implemented directly by
geometrical operations on image blobs, without explicit
knowledge of the symbolic character labels (that is,
without automatic character recognition). The
applications are implemented as part of Image EMACS, an
editor for binary document images, and include editing
multilingual documents, reformatting text to a new
column width, differential comparison of two versions
of a document, and preprocessing an image prior to
character recognition.",
acknowledgement = ack-nhfb,
affiliation = "Xerox Palo Alto Res. Center, Palo Alto, CA, USA",
classification = "C6130D (Document processing techniques)",
keywords = "Text image editing; Scanned text processing; Document
processing operations; Image elements; Scanned document
image; Geometrical operations; Image blobs; Image
EMACS; Binary document images; Preprocessing",
pubcountry = "USA",
thesaurus = "Document image processing; Text editing",
}
@TechReport{Beebe:1991:ESa,
author = "Nelson H. F. Beebe",
title = "{\LaTeX} Editing Support",
institution = inst-CSC,
address = inst-CSC:adr,
pages = "28",
day = "07",
month = oct,
year = "1991",
bibsource = "ftp://ftp.math.utah.edu/pub/bibnet/authors/b/beebe-nelson-h-f.bib",
note = "See also \cite{Beebe:1991:ESb}.",
}
@TechReport{Beebe:1991:ESb,
author = "Nelson H. F. Beebe",
title = "{\LaTeX} Editing Support",
institution = inst-CSC,
address = inst-CSC:adr,
pages = "69",
day = "07",
month = oct,
year = "1991",
bibsource = "ftp://ftp.math.utah.edu/pub/bibnet/authors/b/beebe-nelson-h-f.bib",
note = "This is an on-line Emacs INFO version of part of
\cite{Beebe:1991:ESa}.",
}
@InProceedings{Bowen:1991:HMC,
author = "D. E. Bowen and A. C. Beers",
title = "A highly-portable {Modula-2} compiler",
crossref = "Anonymous:1991:SIM",
pages = "68--76",
month = "",
year = "1991",
bibdate = "Tue Dec 29 08:26:55 1998",
abstract = "A Modula-2 front-end to the GNU compiler system is
described. The GNU compiler is a highly optimized four
step system with clean interfaces for both the front-
and back-ends. It is designed to run on machines with
32 bit CPUs and configured to run primarily under the
UNIX operating system. Because of the clean interface,
this front-end will be able to take advantage of over a
dozen back-ends currently available and will also
provide a platform for porting Modula-2 to a new
architecture with minimal time and effort.",
acknowledgement = ack-nhfb,
affiliation = "State Univ. of New York, Buffalo, NY, USA",
classification = "C6150C (Compilers, interpreters and other
processors); C6180 (User interfaces); C6110B (Software
engineering techniques)",
keywords = "Highly-portable Modula-2 compiler; Modula-2 front-end;
GNU compiler system; Highly optimized four step system;
Clean interfaces; Back-ends; CPUs; UNIX operating
system; New architecture",
thesaurus = "Modula; Program compilers; Software portability; User
interfaces",
}
@TechReport{Boyer:1991:ACP,
author = "Robert S. Boyer and Yuan Yu",
title = "{AUTOMATED CORRECTNESS PROOFS OF MACHINE CODE PROGRAMS
FOR A COMMERCIAL MICROPROCESSOR}",
number = "TR-91-33",
institution = "University of Texas, Austin",
address = "Austin, TX, USA",
pages = "15",
month = nov,
year = "1991",
bibsource = "Techreports/university-of-texas--austin.bib",
note = "prize ($\backslash$\$1.50).",
abstract = "We have formally specified a substantial subset of the
MC68020, a widely used microprocessor built by
Motorola, within the mathematical logic of the
automated reasoning system Nqthm, i.e., the Boyer-Moore
Theorem Prover. Using this MC68020 specification, we
have mechanically checked the correctness of MC68020
machine code programs for Euclid's GCD, Hoare's Quick
Sort, binary search, and other well-known algo- rithms.
The machine code for these examples was generated using
the Gnu C and the Verdix Ada compilers. We have
developed an extensive library of proven lemmas to
facilitate automated reasoning about machine code
programs. We describe a two stage methodology we use to
do our machine code proofs.",
keywords = "Automated reasoning Nqthm Boyer-Moore Theorem Prover
formal program verification object code Gnu C Ada.",
}
@Book{Cameron:1991:LGE,
author = "Debra Cameron and Bill Rosenblatt",
title = "Learning {GNU Emacs}",
publisher = pub-ORA,
address = pub-ORA:adr,
edition = "1991 (minor corrections, {April}, 1992)",
pages = "xxvii + 411",
year = "1991",
ISBN = "0-937175-84-6",
ISBN-13 = "978-0-937175-84-2",
LCCN = "QA76.76.T49 C35 1991",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
bibsource = "ftp://ftp.ora.com/pub/products/catalogs/book.catalog",
price = "US\$27.95",
series = "A Nutshell handbook",
acknowledgement = ack-nhfb,
annote = "UNIX text processing.",
keywords = "GNU Emacs.; Text editors (Computer programs)",
}
@Book{Chamberlain:1991:LBB,
author = "Steve Chamberlain",
title = "{LIB BFD}, the {Binary File Descriptor} library",
publisher = pub-FSF,
address = pub-FSF:adr,
pages = "????",
year = "1991",
ISBN = "????",
ISBN-13 = "????",
LCCN = "????",
bibdate = "Wed Sep 20 12:03:33 2000",
acknowledgement = ack-nhfb,
}
@Manual{Chassell:1991:TGD,
author = "Robert J. Chassell and Richard Stallman",
title = "Texinfo: the {GNU} documentation format: edition
2.04",
organization = pub-FSF,
address = pub-FSF:adr,
edition = "Second",
pages = "viii + 220",
month = apr,
year = "1991",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
keywords = "GNU Emacs (Computer program); Texinfo.; Software
documentation.",
}
@Article{Chatterjee:1991:EOD,
author = "A. Chatterjee and A. Khanna and Y. Hung",
title = "{ES}-Kit: an object-oriented distributed system",
journal = j-CPE,
volume = "3",
number = "6",
pages = "525--539",
month = dec,
year = "1991",
CODEN = "CPEXEI",
ISSN = "1040-3108",
bibdate = "Wed Oct 30 06:04:36 MST 1996",
abstract = "This paper describes the design, implementation, and
performance of ES-Kit, a distributed object-oriented
system being developed by the Experimental Systems
Project at the Microelectronics and Computer Technology
Corporation. The operating system consists of a kernel
and a set of public service objects which dynamically
extend the functionality of the kernel by providing
several traditional operating system services when
required by application objects. Applications for the
ES-Kit environment are written in GNU C++ and do not
require additional language primitives for distributed
execution. Initial performance results from a
representative set of applications indicate that the
object-oriented paradigm provides a powerful solution
to distributed programming.",
acknowledgement = ack-nhfb,
affiliation = "Exp. Syst. Lab., Microelectron. and Comput. Technol.
Corp., Austin, TX, USA",
classification = "C6110J (Object-oriented programming); C5620
(Computer networks and techniques); C5220 (Computer
architecture)",
keywords = "ES-Kit; Object-oriented distributed system; Design;
Implementation; Performance; Operating system; Kernel;
Public service objects; Functionality; GNU C++",
pubcountry = "UK",
thesaurus = "Distributed processing; Object-oriented programming",
}
@Manual{Close:1991:GM,
author = "Diane Barlow Close",
title = "The {GAWK} manual",
organization = pub-FSF,
address = pub-FSF:adr,
edition = "0.13, version 2.13",
pages = "vii + 186",
month = dec,
year = "1991",
ISBN = "1-882114-15-9",
ISBN-13 = "978-1-882114-15-3",
LCCN = "????",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
keywords = "GNU Emacs --- Handbooks, manuals, etc.; AWK (Computer
program language) --- Handbooks, manuals, etc.; Text
editors (Computer programs) --- Handbooks, manuals,
etc.",
}
@InProceedings{Conte:1991:BC,
author = "T. M. Conte and W. W. Hwu",
title = "Benchmark characterization",
crossref = "Milutinovic:1991:PTA",
pages = "365--372 (vol. 1)",
month = "",
year = "1991",
bibdate = "Wed Oct 30 06:04:36 MST 1996",
abstract = "The design of experimental systems usually employ some
form of simulation. The inputs to the simulation are
typically standard benchmarks. This paper presents a
method for finding a cost-effective design for each
benchmark. This method is called benchmark
characterization. Benchmark characterization is
possible in part due to the advent of high-performance
architecture-independent compiler technology. To
demonstrate the method, seven benchmarks are
characterized. Five of the benchmarks are from the SPEC
benchmark set (gcc, espresso, spice, li and matrix300)
and two are popular synthetic benchmarks (dhrystone and
whetstone). Benchmark characteristics are reported for
the processor, memory system, and operating system.",
acknowledgement = ack-nhfb,
affiliation = "Center for Reliable and High-Performance Comput.,
Illinois Univ., Urbana, IL, USA",
classification = "C5470 (Performance evaluation and testing); C6150J
(Operating systems)",
keywords = "Translation lookaside buffer requirements; TLB;
Abstract performance; Benchmark characterization;
High-performance architecture-independent compiler
technology; SPEC benchmark set; Gcc; Espresso; Spice;
Li; Matrix300; Dhrystone; Whetstone; Memory system;
Operating system",
thesaurus = "Buffer storage; Performance evaluation; Storage
management",
}
@Misc{Cooke:1991:EAS,
author = "Chris Cooke",
title = "{Emacs} --- {A} survival guide",
month = "[9]",
year = "1991",
bibsource = "Misc/IMMD_IV.bib",
}
@Article{Davidson:1991:GCC,
author = "Andrew Davidson",
title = "Generic containers in {C++}",
journal = j-DDJ,
volume = "16",
number = "8",
pages = "50, 52, 124--125",
month = aug,
year = "1991",
CODEN = "DDJSDM",
ISSN = "0884-5395",
bibdate = "Wed Oct 30 06:09:12 MST 1996",
bibsource = "http://www.ddj.com/index/author/index.htm, UnCover
database",
abstract = "A common problem in object-oriented design is creating
and controlling collections, sets, or groups of
objects. Object class designers would ideally like to
focus on the atomic aspects of the object abstraction,
ignoring the secondary problem of maintaining and
controlling collections of these objects, wanting to
implement this control structure in a generic and
reusable fashion. This article presents a method for
creating generic lists of objects in C++ with code
developed on an Intel 80486 using GNU g++ 1.37 under
SCO UNIX System V Release 3.2.",
acknowledgement = ack-nhfb,
classification = "C6110 (Systems analysis and programming)",
keywords = "Generic containers; Object-oriented design; Object
abstraction; C++; Intel 80486; GNU g++ 1.37; SCO UNIX
System V",
pubcountry = "USA",
thesaurus = "C language; C listings; Object-oriented programming;
UNIX",
}
@InProceedings{Dollin:1991:HT,
author = "D. Dollin",
title = "The {HP-ST} toolset",
crossref = "Prehn:1991:VFS",
pages = "687--688",
month = "",
year = "1991",
bibdate = "Wed Oct 30 06:04:36 MST 1996",
abstract = "The HP-ST toolset allows a specifier to construct a
specification document which contains mixed text and
HP-SL specifications. The toolset can be used in either
batch mode, when it is invoked as a collection of UNIX
Commands, or in interactive mode, when it is invoked
via an editing interface such as that provided by
Emacs.",
acknowledgement = ack-nhfb,
affiliation = "Software Eng. Dept., Hewlett-Packard Labs., Bristol,
UK",
classification = "C6115 (Programming support); C6110B (Software
engineering techniques)",
keywords = "HP-ST toolset; Specification document; Batch mode;
UNIX Commands; Interactive mode; Editing interface",
thesaurus = "Formal specification; Software tools; Specification
languages",
}
@Book{Finseth:1991:CTE,
author = "Craig A. Finseth",
title = "The Craft of Text Editing\emdash Emacs for the Modern
World",
publisher = pub-SV,
address = pub-SV:adr,
pages = "xii + 220",
year = "1991",
ISBN = "0-387-97616-7 (New York), 3-540-97616-7 (Berlin)",
ISBN-13 = "978-0-387-97616-7 (New York), 978-3-540-97616-5
(Berlin)",
LCCN = "QA76.76.T49 F56 1991",
bibdate = "Mon Oct 4 11:54:52 1993",
bibsource = "Os/unix.2.bib, Misc/unix.2.bib",
note = "Contains extensive discussion of design issues for
text editors, with examples from Emacs. Appendix B
gives sources of numerous Emacs implementations.
Appendix D summarizes the TECO command set.",
acknowledgement = ack-nhfb,
libnote = "Not yet in my library.",
}
@Article{Jolitz:1991:PUT,
author = "W. F. Jolitz and L. G. Jolitz",
title = "Porting {UNIX} to the 386: three initial {PC}
utilities",
journal = j-DDJ,
volume = "16",
number = "2",
pages = "54, 56, 58--61, 111--112, 114--115",
month = feb,
year = "1991",
CODEN = "DDJSDM",
ISSN = "0884-5395",
bibdate = "Wed Oct 30 06:09:12 MST 1996",
abstract = "Explains how to write PC utilities that allow open to
initially load the first programs and data onto a 386
target host. With this in mind, the authors examine
code from three PC-based utilities-BOOT.EXE, CPFS.EXE,
and CPSW.EXE-that facilitate the basic access to the
hardware from MS-DOS needed to begin a UNIX port.
BOOT.EXE executes a GCC-compiled program (using the
Free Software Foundation's GNU C compiler) in protected
mode from MS-DOS. CPFS.EXE installs a root filesystem
on to the hard disk. CPSW.EXE copies files to a shared
portion of disk so that MS-DOS and UNIX can exchange
information. In examining these areas, the authors
illustrate how the UNIX bootstrap process functions,
because these programs mimic that process to a great
degree.",
acknowledgement = ack-nhfb,
classification = "C6150E (General utility programs); C6150J (Operating
systems)",
keywords = "80386 Microprocessor; Software porting; 386 Based host
microcomputer; Data exchange; BOOT.EXE; CPFS.EXE;
CPSW.EXE; PC utilities; UNIX; GCC-compiled program; GNU
C compiler; Protected mode; Root filesystem; Shared
portion; MS-DOS; Bootstrap process",
pubcountry = "USA",
thesaurus = "C listings; Computer bootstrapping; Electronic data
interchange; Microcomputer applications; Software
portability; UNIX; Utility programs",
}
@Article{Kotz:1991:CG,
author = "David Kotz",
title = "{CUG334 GNUPLOT}",
journal = j-CUJ,
volume = "9",
type = "CUG Library Update",
number = "4",
pages = "110--??",
month = apr,
year = "1991",
ISSN = "0898-9788",
bibdate = "Fri Aug 30 16:52:23 MDT 1996",
bibsource = "http://www.cuj.com/cbklist.htm",
acknowledgement = ack-nhfb,
}
@Article{Lallemand:1991:DAD,
author = "E. Lallemand",
title = "Development of an aid to definition of data types in
{LOTOS}",
journal = j-BULL-SCI-ASSOC-INGEN-ELECTRICIENS-MONTEFIORE,
volume = "104",
number = "1",
pages = "3--19",
month = "",
year = "1991",
CODEN = "BURMA2",
ISSN = "0302-2676",
bibdate = "Wed Oct 30 06:09:12 MST 1996",
abstract = "The LOTOS standardised formal specification language
is summarised and the problem of overlong descriptions
preventing concise treatment of complex systems is
addressed. Extensions of the language allowing short
definitions of most data types used in current
specifications are defined. A Data Facility Compiler
which translates these extensions into standard LOTOS
is proposed, and its integration into Schumacker's
(1990) Integrated LOTOS Toolset between the EMACS
editor and SCLOTOS syntactic analyser is explained. A
source specification using the defined extensions and
its translation by the proposed tool are appended.",
acknowledgement = ack-nhfb,
affiliation = "Inst. Montefiore, Li{\`e}ge Univ., Belgium",
classification = "C6115 (Programming support); C6140D (High level
languages); C6120 (File organisation)",
keywords = "LOTOS; Standardised formal specification language;
Data Facility Compiler; Integrated LOTOS Toolset; EMACS
editor; SCLOTOS syntactic analyser",
language = "French",
pubcountry = "Belgium",
thesaurus = "Program processors; Software tools; Specification
languages",
}
@MastersThesis{Li:1991:CEC,
author = "Ping-Hsuan Li",
title = "Classifying {Emacs} commands for a better user
interface",
type = "Thesis (M.S.)",
school = "University of Florida",
address = "Gainesville, FL, USA",
pages = "vii + 52",
year = "1991",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
}
@TechReport{Liu:1991:OFA,
author = "Sying-Syang Liu and Roger Ogando and Norman Wilde",
title = "The Object Finder: {A} Design Recovery Tool",
number = "SERC-TR-46-F",
institution = "Software Engineering Research Centre",
address = "????",
month = jan,
year = "1991",
bibsource = "Techreports/software-engineering-research-centre.bib",
abstract = "This paper describes a design recovery tool, the
object finder. The goal of the object finder is to aid
an analyst or maintainer in recovering certain kinds of
design principles and system structures from source
code. The object finder looks for clusters of
data,structures and routines, that are analogous to the
objects and object classes of object- oriented
programming. The object finder is built on GNU Emacs.
The output of the identified objects can be either in a
textual form or in a graphical form. A user will be
able to identify high level design knowledge by
reviewing the identified objects. In this paper, we
describe the design principles, user interface, and the
implementation of the object finder.",
}
@Article{Morris:1991:CPC,
author = "W. G. Morris",
title = "{CCG}: a prototype coagulating code generator",
journal = j-SIGPLAN,
volume = "26",
number = "6",
pages = "45--58",
month = jun,
year = "1991",
CODEN = "SINODQ",
ISSN = "0362-1340",
bibdate = "Wed Oct 30 06:09:12 MST 1996",
abstract = "CCG is a prototype code generator based on
coagulation. Coagulation orders code generation using a
run-time profile for the program being compiled. By
treating busy parts of a program first and using the
strategy of local optimality, CCG maximizes the benefit
of careful instruction selection, register allocation
and interprocedural optimization while avoiding
unnecessary data movement in busy sections. Coagulation
radically alters standard techniques for code
generation, achieving highly efficient code with
graph-coloring register allocation or peephole
optimization. Experimental results showing an average
25\% improvement over the GNU C compiler suggest that
compilation order is crucial and that coagulation can
outperform current code generator technology.",
acknowledgement = ack-nhfb,
affiliation = "Software Options Inc., Cambridge, MA, USA",
classification = "C6115 (Programming support); C6150C (Compilers,
interpreters and other processors)",
keywords = "Prototype coagulating code generator; Run-time
profile; Busy parts; Local optimality; CCG; Careful
instruction selection; Register allocation;
Interprocedural optimization; Busy sections; Highly
efficient code; Graph-coloring register allocation;
Compilation order; Current code generator technology",
thesaurus = "Application generators; Optimisation; Program
compilers; Software tools",
}
@TechReport{Motl:1991:UMG,
author = "Mark B. Motl and Bart Childs",
title = "A User's Manual for {GNU Emacs}' Web-mode",
type = "\path|ftp.cs.tamu.edu:/pub/tex-web/web/DOCs|",
institution = "Texas A\&M University",
address = "College Station, TX, USA",
year = "1991",
bibdate = "Wed Aug 24 17:50:49 1994",
acknowledgement = ack-bc,
}
@Article{Muller:1991:PAS,
author = "H. Muller and J. Winckler and S. Grzybek and M. Otte
and B. Stoll and F. Equoy and N. Higelin",
title = "The program animation system {PASTIS}",
journal = j-J-VIS-COMP-ANIMATION,
volume = "2",
number = "1",
pages = "26--33",
month = jan # "-" # mar,
year = "1991",
CODEN = "JVCAEO",
ISSN = "1049-8907",
bibdate = "Wed Oct 30 06:04:36 MST 1996",
abstract = "The software animation system PASTIS (Program
Animation System with Interactive Solutions) for
program animation with emphasis on the visualization of
the dynamic behaviour of algorithms and data structures
is presented. Its main properties are unmodified source
code of the visualized program, concurrent multiple
views on algorithms and data structures, and
interactive alterations of views during run time.
PASTIS is distinguished by high modularity and strict
separation of its components. This makes it
particularly suitable for distributed computing
environments. The interface between program and
animation is a relational data model. Animations are
directed by a single tuple, or sets of tuples, called
relations, or sets of relations, called networks.
Animations can be nested hierarchically. A prototype of
PASTIS was implemented under UNIX using the GNU source
level debugger gdb and the X-window system.",
acknowledgement = ack-nhfb,
affiliation = "Inst. fur Inf., Freiburg Univ., Germany",
classification = "C6115 (Programming support); C6180G (Graphical user
interfaces)",
keywords = "Software animation system; PASTIS; Program animation;
Dynamic behaviour; Algorithms; Data structures;
Unmodified source code; Concurrent multiple views;
Distributed computing environments; Relational data
model; UNIX; GNU source level debugger; Gdb; X-window
system",
pubcountry = "UK",
thesaurus = "Computer animation; Graphical user interfaces;
Software tools; Visual programming",
}
@Article{Parker:1991:MNE,
author = "Tim Parker",
title = "Moving Up to New Editors",
journal = j-UNIX-REVIEW,
volume = "9",
number = "9",
pages = "69--75",
month = sep,
year = "1991",
CODEN = "UNRED5",
ISSN = "0742-3136",
bibdate = "Wed Oct 30 06:32:55 MST 1996",
abstract = "a/Soft Development Inc.'s nu/TPU, Bradford Business
Systems' SpeedEdit, Buzzwords International's
Professional Edit, Iliad Group's PI Edit, and UniPress
Software's Emacs.",
acknowledgement = ack-nhfb,
}
@Book{Raymond:1991:NHD,
author = "Eric Raymond",
title = "The New Hacker's Dictionary",
publisher = pub-MIT,
address = pub-MIT:adr,
pages = "xx + 433",
year = "1991",
ISBN = "0-262-68069-6",
ISBN-13 = "978-0-262-68069-1",
LCCN = "PN6231.E4 H3 1991",
bibdate = "Tue Sep 28 14:37:02 1993",
bibsource = "Os/unix.2.bib, Misc/unix.2.bib",
note = "This book corresponds to version 2.9.6 of the on-line
jargon file. The latest (at the time of writing) is
version 2.9.12 (\path|jargon2912.txt.z|) which is
available by anonymous {\tt ftp} from
\path|prep.ai.mit.edu| (in \path|/pub/gnu|) or
\path|wuarchive.wustl.edu| (in \path|mirrors/gnu|).
Changes since the publication of this book can be found
in the file \path|jargon-upd.z|. (\path|*.z| are files
compressed by GNU {\tt zip} ({\tt gzip})).",
acknowledgement = ack-sk,
}
@TechReport{Schmidt:1991:CES,
author = "Heinz W. Schmidt and Stephen M. Omohundro",
title = "{CLOS}, Eiffel, and Sather: {A} Comparison",
number = "TR-91-047",
institution = "International Computer Science Institute",
address = "Berkeley, CA",
month = sep,
year = "1991",
bibsource = "Techreports/ICSI.bib",
abstract = "The Common Lisp Object System defines a powerful and
flexible type system which builds on more than 15 years
of experience with object-oriented programming. Most
current implementations include a comfortable suite of
Lisp support tools including an Emacs lisp editor, an
interpreter, an incremental compiler, a debugger, and
an inspector which together promote rapid prototyping
and design. What else might one want from a system? We
argue that static typing yields earlier error
detection, greater robustness, and higher efficiency
and that greater simplicity and more orthogonality in
the language constructs leads to a shorter learning
curve and more intuitive programming. These elements
can be found in Eiffel and a new object-oriented
language, Sather, that we are developing at ICSI.
Language simplicity and static typing are not for free,
though. Programmers have to pay with loss of
polymorphism and flexibility in prototyping. We give a
short comparison of CLOS, Eiffel and Sather, addressing
both language and environment issues. The different
approaches taken by the languages described in this
paper have evolved to fulfill different needs. While we
have only touched on the essential differences, we hope
that this discussion will be helpful in understanding
the advantages and disadvantages of each language.",
}
@InProceedings{Schurr:1991:PTH,
author = "A. Schurr",
title = "{PROGRESS}-editor: a text-oriented hybrid editor for
programmed graph rewriting systems",
crossref = "Ehrig:1991:GGT",
pages = "67",
month = "",
year = "1991",
bibdate = "Wed Oct 30 06:04:36 MST 1996",
abstract = "Summary form only given. The language progress is, as
far as is known, the first strongly typed language
which is based on the concepts of programmed graph
rewriting systems. Currently, an integrated programming
support environment for this language, including a
syntax-directed editor and an interpreter, is under
construction. The design and implementation of this
environment is based on previous experiences with the
realization of the integrated project support
environment IPSEN. Thus, attributed graphs are used for
the internal representation of documents, and the
language PROGRESS has been used to 'specify' parts of
the PROGRESS environment's implementation
(bootstrapping). Up to now, the implementation of the
first version of a syntax-directed, text-oriented
hybrid editor has been finished. This editor consists
of the following main components: a menu-driven,
syntax-directed editor, an integrated emacs-like text
editor, an incrementally working multiple-entry parser,
an incrementally working unparser (pretty-printer), a
layout editor, and a demand-driven, incrementally
working type-checker.",
acknowledgement = ack-nhfb,
affiliation = "Lehrstuhl fur Inf., Aachen Univ. of Technol.,
Germany",
classification = "C6130D (Document processing techniques); C6140D
(High level languages); C6115 (Programming support);
C4210 (Formal logic); C1160 (Combinatorial
mathematics)",
keywords = "Text-oriented hybrid editor; Programmed graph
rewriting systems; Strongly typed language; Integrated
programming support environment; Syntax-directed
editor; Interpreter; Integrated project support
environment; IPSEN; Attributed graphs; Bootstrapping;
Menu-driven; Integrated emacs-like text editor;
Incrementally working multiple-entry parser;
Incrementally working unparser; Pretty-printer; Layout
editor; Demand-driven; Incrementally working
type-checker",
thesaurus = "Graph theory; High level languages; Programming
environments; Project support environments; Rewriting
systems; Text editing",
}
@Article{Stephens:1991:ILP,
author = "C. Stephens and B. Cogswell and J. Heinlein and G.
Palmer and J. P. Shen",
title = "Instruction level profiling and evaluation of the {IBM
RS}\slash 6000",
journal = j-COMP-ARCH-NEWS,
volume = "19",
number = "3",
pages = "180--189",
month = may,
year = "1991",
CODEN = "CANED2",
ISSN = "0163-5964",
bibdate = "Wed Oct 30 06:09:12 MST 1996",
abstract = "Reports preliminary results from using goblin, a new
instruction level profiling system, to evaluate the IBM
RISC System/6000 architecture. The evaluation presented
is based on the Systems Performance Evaluation
Cooperative (SPEC) benchmark suite. Each SPEC program
(except GCC) is processed by goblin to produce an
instrumented version. During execution of the
instrumented program, profiling routines are invoked
which trace the execution of the program. These
routines also collect statistics on dynamic instruction
mix, branching behavior, and resource utilization.
Based on these statistics, the actual performance and
the architectural efficiency of the RS/6000 are
evaluated. A comparison with the DECStation 3100 is
also presented. The evaluation indicates that for the
SPEC benchmark suite the architecture of the RS/6000 is
well balanced and exhibits impressive performance,
especially on the floating-point intensive
applications.",
acknowledgement = ack-nhfb,
affiliation = "Dept. of Electr. and Comput. Eng., Carnegie Mellon
Univ., Pittsburgh, PA, USA",
classification = "C5470 (Performance evaluation and testing); C5220
(Computer architecture)",
keywords = "Performance evaluation; Program execution tracing; IBM
RS/6000; Goblin; Instruction level profiling system;
IBM RISC System/6000 architecture; Systems Performance
Evaluation Cooperative; Instrumented version;
Statistics; Dynamic instruction mix; Branching
behavior; Resource utilization; Architectural
efficiency; DECStation 3100; SPEC benchmark suite;
Floating-point intensive applications",
thesaurus = "Computer architecture; IBM computers; Performance
evaluation; Reduced instruction set computing",
}
@Article{Valdes:1991:LLB,
author = "R. Valdes",
title = "Little languages, big questions",
journal = j-DDJ,
volume = "16",
number = "9",
pages = "16--18, 20, 22, 25",
month = sep,
year = "1991",
CODEN = "DDJSDM",
ISSN = "0884-5395",
bibdate = "Wed Oct 30 06:09:12 MST 1996",
abstract = "The most widely used programming language is Lotus
1-2-3 Macro Language. A very large number of people use
it, and get worthwhile results every day. Why such a
puny language claims so large an audience might be a
mystery to those ensconced in whether multiple
inheritance in C++ is a Good Thing. Nevertheless, it's
useful to look at how little languages were used in the
past, and how they are used in the software field
today. Some of this may cause you to rethink your past
allegiances. The author looks at such languages as lex,
yacc, TECO and EMACS.",
acknowledgement = ack-nhfb,
classification = "C6140E (Other programming languages)",
keywords = "Lotus 1-2-3 Macro Language; Little languages;
Software; Lex; Yacc; TECO; EMACS",
pubcountry = "USA",
thesaurus = "Macros; Programming languages",
}
@InProceedings{Wiil:1991:IDE,
author = "U. K. Wiil",
title = "Issues in the design of {EHTS}: a multiuser hypertext
system for collaboration",
crossref = "Milutinovic:1991:PTH",
pages = "629--639 (vol. 2)",
year = "1991",
bibdate = "Wed Oct 30 06:04:36 MST 1996",
abstract = "The paper describes the architecture, issues from the
design, and experiences from the use of EHTS (Emacs
hyper text system), a multiuser hypertext system for
collaboration. EHTS consists of a text editor, a
graphical browser, and an active hypertext database
named HyperBase. HyperBase is built on the
client-server model and has been designed especially to
support collaboration among its users, by providing an
event mechanism and a fine-grained lock mechanism.
Events from HyperBase are used to notify the editor and
browser about important actions on the shared data,
enabling them to monitor changes. Four categories of
issues from the design and experiences from the use of
EHTS are reported: architecture, collaboration, user
interface, and data model. Based on experiences with
the client-server model, the author suggests a new and
improved architecture for the event driven multiuser
hypertext system. One major lesson learned is that
events and fine-grained locks can provide powerful
support for data sharing among multiple users
simultaneously working in the same environment. The
need for a flexible data model is another lesson
learned. It is difficult to predict what data model
objects actually will be needed, when the data model is
designed before the user interface.",
acknowledgement = ack-nhfb,
affiliation = "Dept. of Comput. Sci., Aalborg Univ., Denmark",
classification = "C6180 (User interfaces); C6160Z (Other DBMS); C6150N
(Distributed systems)",
keywords = "EHTS; Multiuser hypertext system; Collaboration; Emacs
hyper text system; Text editor; Graphical browser;
Active hypertext database; HyperBase; Client-server
model; Event mechanism; Fine-grained lock mechanism;
User interface; Data model; Event driven multiuser
hypertext system; Data sharing; Flexible data model",
thesaurus = "Database management systems; Groupware; Hypermedia;
User interfaces",
}
@Article{Wiil:1991:UES,
author = "U. K. Wiil",
title = "Using events as support for data sharing in
collaborative work",
journal = j-INFORMATIK-INFORMATIONEN-REPORTE,
month = "",
year = "1991",
ISSN = "0233-2582",
bibdate = "Wed Oct 30 06:09:12 MST 1996",
abstract = "Data sharing is fundamental to computer-supported
cooperative work. The paper describes how the use of
events and fine grained locks, especially events, can
provide powerful support for simultaneous sharing. The
description is based on experience with a prototype
hypertext system-Emacs HyperText System-and on
observations from the literature. Three issues that
comes up with simultaneous sharing: access contention,
real-time monitoring, and real-time communication, are
given special interest in the paper. It is described
how events and fine grained locks can remedy these
issues in general and in practice-examples from the use
of events and fine grained locks in EHTS are given.",
acknowledgement = ack-nhfb,
affiliation = "Dept. of Math. and Comput. Sci., Aalborg Univ.,
Denmark",
classification = "C6160Z (Other DBMS)",
issue = "no.4 p. 162-76",
keywords = "Data sharing; Collaborative work; Events; Fine grained
locks; Simultaneous sharing; Hypertext system; Emacs
HyperText System; Access contention; Real-time
monitoring; Real-time communication",
thesaurus = "Database management systems; Groupware; Hypermedia;
Multi-access systems",
}
@Article{Yasumura:1991:CSC,
author = "M. Yasumura and M. Arisawa and N. Saito",
title = "A case study of computer literacy education",
journal = j-JOHO-SHORI,
volume = "32",
number = "12",
pages = "1310--1317",
month = "",
year = "1991",
CODEN = "JOSHA4",
ISSN = "0447-8053",
bibdate = "Wed Oct 30 06:04:36 MST 1996",
abstract = "Describes a study of computing undertaken at the
Shonan Fujisawa Campus, including instruction on: UNIX
4.3 BSD; X Windows; NFS; Emacs; EGG; LaTeX; TeXDraw;
Pascal; Kermit; MS-DOS; and strategic information
systems.",
acknowledgement = ack-nhfb,
affiliation = "Fac. of Environ. Inf., Keio Univ., Shonan Fujisawa,
Japan",
classification = "C0220 (Education and training)",
keywords = "Case study; Computer literacy education; Shonan
Fujisawa Campus; Instruction; UNIX 4.3 BSD; X Windows;
NFS; Emacs; EGG; LaTeX; TeXDraw; Pascal; Kermit;
MS-DOS; Strategic information systems",
language = "Japanese",
pubcountry = "Japan",
thesaurus = "Computer science education",
}
@TechReport{Zien:1991:XXF,
author = "Jason Zien and Jackson Kong and Pak K. Chan and
Martine Schlag",
title = "{XS} - {XILINX} 2000/3000 {FPGA} Simulator",
type = "ucsc-crl-91-42",
institution = "University of California, Santa Cruz",
address = "Santa Cruz, CA, USA",
pages = "39",
month = oct,
year = "1991",
bibsource = "Techreports/university-of-california-santa-cruz.bib",
note = "prize ($\backslash$\$5.00).",
URL = "mailto::rnalib@ftp.cs.ucsc.edu
ftp://ftp.cse.ucsc.edu/pub/tr/ucsc-crl-91-42.ps.Z",
abstract = "With the growing complexity of Field-Programmable Gate
Arrays (FPGA), there is the growing need for
sophisticated design tools to provide higher level
abstractions for managing large designs. It is not
enough to be able to create large designs; it is also
necessary to test and debug them. Debugging FPGA
designs on the circuit board is an awkward task, since
the designer can only access the input/output pins of
the chip. XS provides the designer with the ability to
simulate and debug circuit designs quickly, and with
access to all internal nets. XS is a batch-mode,
unit-delay, event-driven logic simulator written in Gnu
C++ for verification of designs under the unix X-window
environment. We exploit certain properties in XILINX
XC2000/3000/4000 architectures to enhance the
performance as well as the accuracy of the simulator.
This report serves the dual purposes of being the USER
GUIDE as well as documenting the development of XS.",
}
@Book{Abrahams:1992:UI,
author = "Paul W. Abrahams and Bruce R. Larson",
title = "{UNIX} for the Impatient",
publisher = pub-AW,
address = pub-AW:adr,
pages = "xxvii + 559",
year = "1992",
ISBN = "0-201-55703-7",
ISBN-13 = "978-0-201-55703-9",
LCCN = "QA76.76.O63 A27 1992",
bibdate = "Mon Oct 4 11:54:00 1993",
bibsource = "Os/unix.2.bib, Misc/unix.2.bib",
note = "Excellent, and thorough, coverage of {UNIX}, with
chapters on the file system, utilities, shells,
editors, Emacs, data manipulation, mail, network
communications and resources, the X Window System, and
a comparison of {MS-DOS} and {UNIX}.",
acknowledgement = ack-nhfb,
}
@InProceedings{Aleksander:1992:CCN,
author = "I. Aleksander",
title = "Capturing consciousness in neural systems",
crossref = "Aleksander:1992:ANN",
pages = "17--22 (vol. 1)",
year = "1992",
bibdate = "Wed Oct 30 05:59:54 MST 1996",
abstract = "It is argued that rather than being an unavailable and
abstract concept, consciousness can be captured by
well-stated postulates. Five such postulates are stated
in this paper and the relationship between these and
the properties of a general neural unit (GNU) are
discussed. It is shown that neural models can be said
to capture consciousness provided that controlled
amounts of noise can be judiciously injected into the
system. It is also argued that language-like behaviour
and planning can only be achieved if the state of the
GNU is partitioned.",
acknowledgement = ack-nhfb,
affiliation = "Dept. of Electr. and Electron. Eng., Imperial Coll. of
Sci. Technol. and Med., London, UK",
classification = "C1230D (Neural nets); C1240 (Adaptive system
theory)",
keywords = "Consciousness; Neural systems; General neural unit;
Neural models; Noise; Language-like behaviour;
Planning",
thesaurus = "Neural nets; Planning [artificial intelligence]",
}
@InProceedings{Arceneaux:1992:PGS,
author = "J. Arceneaux and M. Tiemann and D. V. Henkel-Wallace",
title = "The portability of {GNU} software",
crossref = "Anonymous:1992:PSE",
pages = "89--103",
month = "",
year = "1992",
bibdate = "Wed Oct 30 06:04:36 MST 1996",
abstract = "In June of 1987, GNU C version 1.0 was released by the
Free Software Foundation. Since that time, it has been
ported to about 50 host environments and generates code
for about 20 machine architectures. The authors
describe 4 portability case studies based on well-known
GNU software packages: Emacs, GDB, GCC, and BFD. The
case studies present the initial design specifications,
the evolution of the design over time, factors that
influenced (or mandated) changes to the package, and
experience in applying the lessons learned in the
design of subsequent programs.",
acknowledgement = ack-nhfb,
affiliation = "Free Software Found., San Francisco, CA, USA",
classification = "C6110B (Software engineering techniques); C6140D
(High level languages)",
keywords = "Software portability; GNU C version 1.0; GNU software
packages; Emacs; GDB; GCC; BFD",
thesaurus = "C language; Software portability",
}
@InProceedings{Boyer:1992:ACP,
author = "R. S. Boyer and Yuan Yu",
title = "Automated correctness proofs of machine code programs
for a commercial microprocessor",
crossref = "Kapur:1992:ADC",
pages = "416--430",
month = "",
year = "1992",
bibdate = "Wed Oct 30 05:59:54 MST 1996",
abstract = "The authors have formally specified a substantial
subset of the MC68020, a widely used microprocessor
built by Motorola, within the mathematical logic of the
automated reasoning system Nqthm i.e. the Boyer-Moore
Theorem Prover. Using this MC68020 specification, the
authors have mechanically checked the correctness of
MC68020 machine code programs for Euclid's GCD, Hoare's
Quick Sort, binary search, and other well-known
algorithms. The machine code for these examples was
generated using the GNU C and the Verdix Ada compilers.
The authors have developed an extensive library of
proven lemmas to facilitate automated reasoning about
machine code programs. The authors describe a two stage
methodology they use to do their machine code proofs.",
acknowledgement = ack-nhfb,
affiliation = "Dept. of Comput. Sci. and Math., Texas Univ., Austin,
TX, USA",
classification = "C6150G (Diagnostic, testing, debugging and
evaluating systems); C4210 (Formal logic); C6110B
(Software engineering techniques); C5130
(Microprocessor chips)",
keywords = "Automatic correctness proofs; Machine code programs;
Commercial microprocessor; MC68020; Mathematical logic;
Automated reasoning system Nqthm; Boyer-Moore Theorem
Prover; GCD; Hoare's Quick Sort; Binary search; GNU C;
Verdix Ada compilers",
thesaurus = "Formal specification; Microprocessor chips; Program
verification; Theorem proving",
}
@Article{Branagan:1992:BRG,
author = "Linda Branagan",
title = "Book Review: {GNU Emacs}",
journal = j-LOGIN,
volume = "17",
number = "2",
pages = "34--??",
month = mar # "\slash " # apr,
year = "1992",
CODEN = "LOGNEM",
ISSN = "1044-6397",
bibdate = "Tue Feb 20 15:42:13 MST 1996",
bibsource = "ftp://ftp.uu.net/library/bibliography",
acknowledgement = ack-nhfb,
affiliation = "Conver Computer Corporation",
}
@Book{Cameron:1992:LGE,
author = "Debra Cameron and Bill Rosenblatt",
title = "Learning {GNU} Emacs",
publisher = pub-ORA,
address = pub-ORA:adr,
year = "1992",
ISBN = "0-937175-84-6",
ISBN-13 = "978-0-937175-84-2",
bibsource = "Misc/TUBScsd/1992.bib",
descriptor = "Emacs, Textprozessor, Unix",
}
@Article{Carlini:1992:GCC,
author = "Giuliano Carlini and Susan Rendina",
title = "Garbage Collection For {C} Programs",
journal = j-DDJ,
volume = "17",
number = "11",
pages = "46--??",
month = nov,
year = "1992",
CODEN = "DDJOEB",
ISSN = "1044-789X",
bibdate = "Tue Sep 03 09:15:35 1996",
bibsource = "http://www.ddj.com/index/author/index.htm, UnCover
database",
abstract = "Garbage collection, which liberates you from needing
to explicitly free memory, is used languages like Lisp
and Smalltalk. In this article, our authors show you
how to implement conservative, yet efficient,
collection techniques in C.",
acknowledgement = ack-nhfb,
}
@InProceedings{Charles:1992:LUP,
author = "H.-P. Charles",
title = "Loop unrolling for processors with instruction cache",
crossref = "Quinton:1992:APV",
pages = "311--316",
month = "",
year = "1992",
bibdate = "Wed Oct 30 06:04:36 MST 1996",
abstract = "In the well known compiler techniques domain, one can
reuse old optimising algorithms for newer processors.
The author unrolls the innermost loops with the GNU C
compiler for processor with instructions cache.",
acknowledgement = ack-nhfb,
affiliation = "Ecole Normale Superieure de Lyon, France",
classification = "C6150C (Compilers, interpreters and other
processors); C6140D (High level languages)",
keywords = "Loop unrolling; Instruction cache; Optimising
algorithms; Innermost loops; GNU C compiler",
thesaurus = "C language; Instruction sets; Program compilers",
}
@Article{Farris:1992:MEU,
author = "Rick Farris",
title = "Modern Editors for {UNIX}",
journal = j-UNIX-WORLD,
volume = "9",
number = "2",
pages = "73--80",
month = feb,
year = "1992",
ISSN = "0739-5922",
bibdate = "Wed Oct 30 06:32:55 MST 1996",
abstract = "Tired of vi or emacs? We test eight editors that make
life easier for people who need to work with text files
in DOS, UNIX, or other environments",
acknowledgement = ack-nhfb,
}
@InProceedings{Foster:1992:EIH,
author = "C. E. {Foster, III} and H. C. Grossman",
title = "An empirical investigation of the {Haifa} register
allocation technique in the {GNU C} compiler",
crossref = "IEEE:1992:PIS",
pages = "776--779 (vol. 2)",
month = "",
year = "1992",
bibdate = "Tue Dec 29 08:26:43 1998",
DOI = "http://doi.ieeecomputersociety.org/10.1109/SECON.1992.202433",
abstract = "Most register allocation techniques are based on a
graph coloring approach originally developed by G. J.
Chaitin (1981, 1982). The authors examine the Haifa
color/spill algorithm, which is a variant of Chaitin's
coloring algorithm, using a public domain compiler, the
GNU C compiler, on a variety of programs. Empirical
comparisons are made between the GNU C compiler's
register allocation and the Haifa algorithm.",
acknowledgement = ack-nhfb,
affiliation = "Dept. of Comput. Sci., Clemson Univ., SC, USA",
classification = "C6150C (Compilers, interpreters and other
processors); C6120 (File organisation); C1160
(Combinatorial mathematics); C6140D (High level
languages)",
keywords = "Register allocation techniques; Graph coloring
approach; Haifa color/spill algorithm; Coloring
algorithm; Public domain compiler; GNU C compiler",
thesaurus = "C language; Graph colouring; Program compilers;
Storage allocation",
}
@Article{Foundation:1992:CGC,
author = "Free Software Foundation and D. J. Delorie",
title = "{CUG359} --- {GNU C/C++} for 386",
journal = j-CUJ,
volume = "10",
type = "CUG New Release",
number = "3",
pages = "117--??",
month = mar,
year = "1992",
ISSN = "0898-9788",
bibdate = "Fri Aug 30 16:52:23 MDT 1996",
bibsource = "http://www.cuj.com/cbklist.htm",
acknowledgement = ack-nhfb,
}
@Article{Granlund:1992:EBU,
author = "Torbj{\"o}rn Granlund and Richard Kenner",
title = "Eliminating branches using a superoptimizer and the
{GNU C} compiler",
journal = j-SIGPLAN,
volume = "27",
number = "7",
pages = "341--352",
month = jul,
year = "1992",
CODEN = "SINODQ",
ISBN = "0-89791-475-9",
ISBN-13 = "978-0-89791-475-8",
ISSN = "0362-1340",
LCCN = "QA76.7.S53 1992",
bibdate = "Sun Dec 14 09:16:22 MST 2003",
bibsource = "Compendex database;
http://www.acm.org/pubs/contents/proceedings/pldi/143095/index.html;
http://portal.acm.org/; http://portal.acm.org/",
URL = "http://www.acm.org:80/pubs/citations/proceedings/pldi/143095/p341-granlund/",
abstract = "This paper describes an alternative technique for
constructing a superoptimizer, which is called the
Superoptimizer or GSO. Some sample results of the
superoptimizer are presented. The basic design and
structure of the GNU C compiler are discussed.
Subsequently it is shown as to how the results of the
superoptimizer were used to enable the GNU C compiler
to produce very compact code sequences on the RS\slash
6000.",
acknowledgement = ack-nhfb,
affiliation = "Swedish Inst of Computer Science",
affiliationaddress = "Kista, Swed",
annote = "Published as part of the Proceedings of PLDI'92.",
classification = "723.1",
conference = "Proceedings of the ACM SIGPLAN '92 Conference on
Programming Language Design and Implementation",
conferenceyear = "1992",
journalabr = "SIGPLAN Not",
keywords = "algorithms; design; Compact code sequence generation;
Computer programming; GNU C compiler; GNU
superoptimizer; Program compilers",
meetingaddress = "San Francisco, CA, USA",
meetingdate = "Jun 17--19 1992",
meetingdate2 = "06/17--19/92",
sponsor = "ACM",
subject = "{\bf D.3.4} Software, PROGRAMMING LANGUAGES,
Processors, Compilers. {\bf D.3.4} Software,
PROGRAMMING LANGUAGES, Processors, Optimization. {\bf
C.5.1} Computer Systems Organization, COMPUTER SYSTEM
IMPLEMENTATION, Large and Medium (``Mainframe'')
Computers, IBM RS/6000.",
}
@InProceedings{Hennessey:1992:WDE,
author = "W. Hennessey",
title = "{WCL}: delivering efficient {Common Lisp} applications
under {UNIX}",
crossref = "ACM:1992:PAC",
pages = "260--269",
month = "",
year = "1992",
bibdate = "Tue Dec 29 08:26:38 1998",
abstract = "Common Lisp implementations for UNIX have
traditionally provided a rich development environment
at the expense of an inefficient delivery environment.
The goal of WCL is to allow hundreds of Lisp
applications to be realistically available at once,
while allowing several of them to run concurrently. WCL
accomplishes this by providing Common Lisp as a UNIX
shared library that can be linked with Lisp and C code
to produce efficient applications. For example, the
executable for a Lisp version of the canonical 'Hello
World!' program requires only 40k bytes under SunOS 4.1
for SPARC. WCL also supports a full development
environment, including dynamic file loading and
debugging. A modified version of GDB, the GNU Debugger,
is used to debug WCL programs, providing support for
mixed language debugging. The techniques used in WCL
should also be applicable to other high-level languages
that allow runtime mappings from names to objects.",
acknowledgement = ack-nhfb,
affiliation = "Center for Design Res., Stanford Univ., CA, USA",
classification = "C6140D (High level languages); C6150J (Operating
systems); C6115 (Programming support); C6150G
(Diagnostic, testing, debugging and evaluating
systems)",
keywords = "WCL; Common Lisp applications; UNIX; Development
environment; Shared library; C code; GDB; GNU Debugger;
High-level languages; Mixed language debugging; Runtime
mappings",
thesaurus = "LISP; Program debugging; UNIX",
}
@Article{Johnson:1992:EPE,
author = "E. Johnson",
title = "Epsilon Programmer's Editor (software review)",
journal = j-COMP-HUM,
volume = "26",
number = "3",
pages = "234--236",
month = jun,
year = "1992",
CODEN = "COHUAD",
ISSN = "0010-4817",
bibdate = "Wed Oct 30 05:59:54 MST 1996",
abstract = "Designed for computer programmers, Epsilon is a text
editor that runs on MS-DOS microcomputers. It is
modeled after EMACS editors created for mini-computers
and workstations. It is a powerful and adaptable
editor, but it is ill-adapted to microcomputers, and it
can be very awkward and frustrating to use. Epsilon
runs on MS-DOS microcomputers with at least 256 K of
RAM and PC-DOS or MS-DOS version 2.0.",
acknowledgement = ack-nhfb,
affiliation = "South Dakota State Univ., Brookings, SD, USA",
classification = "C7106 (Word processing); C6130D (Document processing
techniques); C6115 (Programming support)",
keywords = "Software review; Computer programmers; Epsilon; Text
editor; MS-DOS microcomputers; RAM; PC-DOS; 256 KB",
numericalindex = "Memory size 2.62E+05 Byte",
pubcountry = "Netherlands",
thesaurus = "Microcomputer applications; Software packages; Text
editing; Word processing",
}
@InProceedings{Kawaguti:1992:SDC,
author = "M. Kawaguti",
title = "A simple distributed computing system",
crossref = "Verkerk:1992:PIC",
pages = "877--880",
month = "",
year = "1992",
bibdate = "Wed Oct 30 05:56:55 MST 1996",
abstract = "An experimental prototype of a distributed computing
system was devised. It was written based solely on the
standard Berkeley UNIX and GNU software environment.
The user may control job dispatch based on the detailed
environmental information about remote hosts. Being
compact, efficient, and free from any artificial
constraints of proprietary software, it may offer a
handy alternative solution to diversified unorthodox
computational requirements. In favor of efficiency for
nearly homogeneous host configurations for dedicated
applications the issue of network transparency was
acknowledged only marginally.",
acknowledgement = ack-nhfb,
affiliation = "Fukui Univ., Japan",
classification = "C6150N (Distributed systems)",
keywords = "RJS; Remote Job System; Distributed computing system;
UNIX; GNU; Network transparency",
thesaurus = "Distributed processing; Software packages; UNIX",
}
@InProceedings{Kortright:1992:CCT,
author = "E. Kortright and D. Cordes",
title = "Cnest and Cscope: Tools for the literate programming
environment",
crossref = "IEEE:1992:PIS",
pages = "604--609 (vol. 2)",
month = "",
year = "1992",
bibdate = "Wed Oct 30 06:04:36 MST 1996",
abstract = "The authors describe two tools for the literate
programming language Cweb: Cnest and Cscope. Cweb is a
Web programming environment for the programming
language C using the typesetting program {\TeX}. An
overview of Web is given. Cnest and Cscope operate
within the EMACS editing environment and provide
support both for the program developer and for the
maintenance programmer. Their implementations are
discussed in detail.",
acknowledgement = ack-nhfb,
affiliation = "Dept. of Comput. Sci., Alabama Univ., Tuscaloosa, AL,
USA",
classification = "C6115 (Programming support); C6140D (High level
languages)",
keywords = "TEX; Literate programming environment; Cweb; Cnest;
Cscope; Web programming environment; C; Typesetting
program; EMACS editing environment; Program developer;
Maintenance programmer",
thesaurus = "C language; Programming environments; Software tools;
Text editing",
}
@Manual{Lea:1992:UGG,
author = "Doug Lea",
title = "User's guide to the {GNU C++} library: last updated 19
February, 1991 for version 1.39.0",
organization = pub-FSF,
address = pub-FSF:adr,
pages = "iv + 134",
year = "1992",
bibdate = "Thu Oct 31 08:43:55 MST 1996",
acknowledgement = ack-nhfb,
}
@InProceedings{Leach:1992:MTP,
author = "J. Leach and S. Nieva",
title = "{MIZ-PR}: a theorem prover for polymorphic and
recursive functions",
crossref = "Voronkov:1992:LPA",
pages = "481--483",
month = "",
year = "1992",
bibdate = "Wed Oct 30 06:04:36 MST 1996",
abstract = "MIZ-PR supports a family of object languages based on
PLPR and parameterized by signature. PLPR is a
predicate logic using polymorphism and recursion, the
main singular properties of this logic are those
derived from the mu -operator, used to define
recursion, and from the type variables and type
constructors. The semantics of the recursive functions
is based on the fixpoint theory whereas the ideas for
the semantics of the polymorphism are near to those for
a Horn clause logic. With this computational logic as
object language, the automated deduction system
obtained is as a tool for proving mathematical theorems
as well as specifying and verifying properties of
functional programs. The system combines fully
automatic proof techniques with man-machine
interaction. In this way it embodies an interface
language to guide deductions, close to the language
used in mathematical reasonings. Using that interface
the user may also specify recursive functions and type
constructions as a usual recursive program
specification.",
acknowledgement = ack-nhfb,
affiliation = "Dpto. de Inf. y Automatica, Univ. Complutense de
Madrid, Spain",
classification = "C6115 (Programming support); C6170 (Expert systems);
C4210 (Formal logic)",
keywords = "Quintus PROLOG; EMACS; SUN station; UNIX; MIZ-PR;
Theorem prover; Object languages; PLPR; Signature;
Predicate logic; Polymorphism; Recursion; Mu -operator;
Fixpoint theory; Horn clause logic; Automated deduction
system; Mathematical theorems; Verifying properties;
Functional programs; Man-machine interaction; Interface
language; Program specification",
thesaurus = "Formal logic; Formal specification; Knowledge based
systems; Program verification; Recursive functions;
Software tools; Theorem proving",
}
@Article{Lieberman:1992:GGE,
author = "J. E. Lieberman",
title = "{GRef2End}: a {GeoRef} to {EndNote} bibliography
translator written in awk",
journal = j-COMP-GEOSCI,
volume = "18",
number = "9",
pages = "1271--1275",
month = oct,
year = "1992",
CODEN = "CGEODT",
ISSN = "0098-3004",
bibdate = "Wed Oct 30 05:59:54 MST 1996",
abstract = "The author presents a program for translating GeoRef
citations into a form usable by EndNote a bibliographic
management and formatting tool. The program is written
in the interpreted text processing language awk which
has a public domain version gawk or nawk for most
computers. The listing given used citations from the
CD-ROM version of the GeoRef bibliographic database.
The script can be modified interactively and rerun on a
particular set of references in order to optimize the
accuracy of a particular translation.",
acknowledgement = ack-nhfb,
affiliation = "Inst. of Earth Sci., Hebrew Univ., Jerusalem, Israel",
classification = "C6130D (Document processing techniques); C7250C
(Bibliographic systems); C6160 (Database management
systems (DBMS)); C6130E (Data interchange)",
keywords = "GRef2End; GeoRef; EndNote; Bibliography translator;
Awk; Bibliographic management; Interpreted text
processing language; Gawk; Nawk; Bibliographic
database; Script; References",
pubcountry = "UK",
thesaurus = "Bibliographic systems; Complete computer programs;
Text editing",
}
@TechReport{Lius:1992:OFU,
author = "S. Lius and R. Ogando",
title = "The Object Finder User's Manual",
number = "SERC-TR-56-F",
institution = "Software Engineering Research Centre",
address = "????",
month = jan,
year = "1992",
bibsource = "Techreports/software-engineering-research-centre.bib",
abstract = "The maintenance of a software system usually begins
with considerable effort spent in understanding system
structure. A system structure consists of the grouping
of routines into modules within the system. An approach
known as the object finder exits to assist the
programmer in understanding the structure and data of a
program based on the object-like features found in the
program. The object finder prototype is a design
recovery tool to aid a programmer in recovering certain
kinds of design principles and system structure from
its source code. The object finder looks for clusters
of data, structures and routines, that are analogous to
the objects and object classes of object-oriented
programming. The object finder prototype operates
within the GNU Emacs environment and is written in
Emacs Lisp and C. This report describes how to install
the object finder prototype, how to operate the object
finder to look for the clusters in a software system,
and how to display a graphical representation of these
clusters. It also explains the components of the object
finder prototype.",
}
@InProceedings{Long:1992:CSC,
author = "Junsheng Long and W. K. Fuchs and J. A. Abraham",
title = "Compiler-assisted static checkpoint insertion",
crossref = "IEEE:1992:DPI",
pages = "58--65",
month = "",
year = "1992",
bibdate = "Wed Oct 30 05:59:54 MST 1996",
abstract = "This paper describes a compiler-assisted approach for
static checkpoint insertion. Instead of fixing the
checkpoint location before program execution, a
compiler enhanced polling mechanism is utilized to
maintain both the desired checkpoint intervals and
reproducible checkpoint locations. The technique has
been implemented in a GNU CC compiler for Sun 3 and Sun
4 (SPARC) processors. Experiments demonstrate that the
approach provides for stable checkpoint intervals and
reproducible checkpoint placements with performance
overhead comparable to a previous compiler-assisted
dynamic scheme (CATCH).",
acknowledgement = ack-nhfb,
affiliation = "Coordinated Sci. Lab., Illinois Univ.,
Urbana-Champaign, IL, USA",
classification = "C6150G (Diagnostic, testing, debugging and
evaluating systems); C6150C (Compilers, interpreters
and other processors)",
keywords = "Compiler-assisted approach; Static checkpoint
insertion; Compiler enhanced polling mechanism; GNU CC
compiler; Sun 3; Sun 4; SPARC; Performance overhead",
thesaurus = "Fault tolerant computing; Program compilers; System
recovery",
}
@Article{Maner:1992:APE,
author = "W. Maner",
title = "Adapting a programming editor ({EMACS}) for persons
who are blind: issues, initiatives and problems",
journal = j-J-MICROCOMPUT-APPL,
volume = "15",
number = "1",
pages = "13--19 (or 13--20??)",
month = jan,
year = "1992",
CODEN = "JMIADO",
ISSN = "0745-7138",
bibdate = "Wed Oct 30 06:04:36 MST 1996",
abstract = "Describes current research in the 'programming by ear'
project. This research uses an extensively modified
EMACS text editor to address general problems which
constrain the effective design of human-computer
interfaces for blind programmers. These include (1) an
information conversion problem, (2) an information
reduction problem, and (3) an information compression
problem. Recent work has focused on the problem of
providing an auditory equivalent for rapid visual
browsing of program source code.",
acknowledgement = ack-nhfb,
affiliation = "Dept. of Comput. Sci., Bowling Green State Univ., OH,
USA",
classification = "C6180 (User interfaces); C7850 (Assistance for the
handicapped)",
keywords = "Programming editor; EMACS; Human-computer interfaces;
Blind programmers; Information conversion; Information
reduction; Information compression; Rapid visual
browsing; Program source code",
pubcountry = "UK",
thesaurus = "Handicapped aids; User interfaces",
}
@InProceedings{McHugh:1992:EBD,
author = "J. McHugh",
title = "An {EMACS} based downgrader for the {SAT}",
crossref = "IEEE:1992:PEA",
pages = "228--237",
year = "1992",
bibdate = "Sat Dec 26 17:01:46 1998",
bibsource = "http://www.cl.cam.ac.uk/~fapp2/steganography/bibliography",
note = "Reprinted in `Computer and Network Security'.",
URL = "http://www.cl.cam.ac.uk/~fapp2/steganography/bibliography/1013.html",
acknowledgement = ack-nhfb,
keywords = "information hiding; steganography",
xxnote = "Check pages?? Cited volume has only xxvii + 233.",
}
@TechReport{McLauchlan:1992:HLV,
author = "P. F. McLauchlan",
title = "{HORATIO}: libraries for vision applications",
number = "OUEL 1967/92",
institution = "Oxford University",
address = "Oxford, UK",
pages = "72",
month = dec,
year = "1992",
bibdate = "Wed Oct 30 05:59:54 MST 1996",
abstract = "The HORATIO vision system comprises a set of libraries
written in ANSI C for either Sun workstations (using
gcc) or transputers (using Inmos C). The global library
contains definitions and functions needed by most
applications. There is also a maths library, a pipeline
control library (only for transputers), a list
manipulation library and an image library providing for
manipulation and channel/stream/file I/O of 2D images.
A graphics library allows images and other primitives
to be displayed in an arbitrary number of X-windows
canvases. An image processing library contains source
for some image processing tools, e.g. edge/corner
detection, normal image flow. The process library
allows the creation of process pipelines (for Sun) and
the tool library high-level X-windows tools for
creation of HORATIO applications. Only the graphics and
tool libraries are X-specific. The function headers
from each of the libraries are listed.",
acknowledgement = ack-nhfb,
classification = "C5260B (Computer vision and picture processing);
C6130B (Graphics techniques)",
issuedby = "Univ. Oxford, UK",
keywords = "HORATIO Release 2.0; HORATIO vision system; ANSI C;
Sun workstations; Gcc; Transputers; Inmos C; Global
library; Maths library; Pipeline control library; List
manipulation library; Image library; File I/O; 2D
images; Graphics library; X-windows canvases; Image
processing library; Corner detection; Normal image
flow; Process library; Tool library; X-windows tools;
Function headers",
pubcountry = "UK",
thesaurus = "Computer graphics; Computer vision; Subroutines",
}
@InProceedings{Meijers:1992:OEB,
author = "F. Meijers",
title = "The {OPAL} event builder; practical experience with
{C++} in data acquisition",
crossref = "Verkerk:1992:PIC",
pages = "180--183",
month = "",
year = "1992",
bibdate = "Wed Oct 30 05:56:55 MST 1996",
abstract = "The OPAL experiment uses a VMEbus based data
acquisition system with MC680*0 processors running
OS-9. The control of the data flow through the event
builder is implemented using C++. Experience with GNU
C++ under OS-9 is discussed, including typical
overheads associated with the use of object oriented
primitives. A technique to map object member functions
on external events is described.",
acknowledgement = ack-nhfb,
affiliation = "CERN, Geneva, Switzerland",
classification = "A2980F (Programming); A0650D (Data gathering,
processing, and recording, data displays including
digital techniques); A2960 (Counting circuits and
nuclear electronics); B7210G (Data acquisition
systems); B7430 (Counting circuits and electronics);
C7320 (Physics and Chemistry); C5520 (Data acquisition
equipment and techniques)",
keywords = "OPAL event builder; Data acquisition; VMEbus based
data acquisition; MC680*0 processors running; OS-9;
Data flow; GNU C++; Overheads; Object oriented
primitives; Object member functions; External events",
thesaurus = "C language; Data acquisition; Nuclear electronics;
Object-oriented programming; Physics computing",
}
@Article{Moreland:1992:CMS,
author = "Carl Moreland",
title = "{CUG372} --- {Mouse++}, {String++}, and {Z++}
Classes",
journal = j-CUJ,
volume = "10",
type = "CUG New Release",
number = "12",
pages = "122--??",
month = dec,
year = "1992",
ISSN = "0898-9788",
bibdate = "Fri Aug 30 16:52:23 MDT 1996",
bibsource = "http://www.cuj.com/cbklist.htm",
acknowledgement = ack-nhfb,
}
@Article{Ohl:1992:CGM,
author = "Thorsten Ohl",
title = "{CUG368} --- {GNUlib} for {MS-DOS}",
journal = j-CUJ,
volume = "10",
type = "CUG New Release",
number = "11",
pages = "74--??",
month = nov,
year = "1992",
ISSN = "0898-9788",
bibdate = "Fri Aug 30 16:52:23 MDT 1996",
bibsource = "http://www.cuj.com/cbklist.htm",
acknowledgement = ack-nhfb,
}
@Article{Rada:1992:CTH,
author = "Roy Rada",
title = "Converting a Textbook to Hypertext",
journal = j-TOIS,
volume = "10",
number = "3",
pages = "294--315",
month = jul,
year = "1992",
CODEN = "ATISET",
ISSN = "1046-8188",
bibdate = "Sat Jan 16 19:04:41 MST 1999",
bibsource = "http://www.acm.org/pubs/tois/toc.html; Compendex
database",
URL = "http://www.acm.org:80",
abstract = "Traditional documents may be transformed into
hypertext by first reflecting the document's logical
markup in the hypertext (producing first-order
hypertext) and then by adding links not evident in the
document markup (producing second-order hypertext). In
our transformation of a textbook to hypertext, the
textbook is placed in an intermediate form based on a
semantic net and is then placed into the four hypertext
systems: Emacs-Info, Guide, HyperTies, and SuperBook.
The first-order Guide and SuperBook hypertexts reflect
a depth-first traversal of the semantic net, and the
Emacs-Info and HyperTies hypertexts reflect a
breadth-first traversal. The semantic net is augmented
manually, and then new traversal programs automatically
generate alternate outlines. An index based on word
patterns in the textbook is also automatically
generated for the second-order hypertext. Our suite of
programs has been applied to a published textbook, and
the resulting hypertexts are publicly available.",
acknowledgement = ack-nhfb,
affiliation = "Univ of Liverpool",
affiliationaddress = "Liverpool, Engl",
classification = "461.4; 723.2; 723.5; 903.1; 903.2; 903.3; C6160Z
(Other DBMS); C7250 (Information storage and
retrieval); C6130D (Document processing techniques)",
journalabr = "ACM Trans Inf Syst",
keywords = "Computer applications; Computer software; Data
processing; Document markup; Hierarchical systems;
Human computer interaction; Human engineering;
Hypermedia models; Hypertext; Indexing (of
information); Information dissemination; Information
retrieval systems; Man machine systems; Semantic net;
Software package Emacs Info; Software package Guides;
Software package HyperTies; Software package Superbook;
Textbooks",
wwwtitle = "Converting a Text to {Guide}, {HyperTies}, and
{Superbook}: Practice and Principles",
}
@Article{Rada:1992:SVB,
author = "R. Rada and C. Murphy",
title = "Searching versus browsing in hypertext",
journal = j-HYPERMEDIA,
volume = "4",
number = "1",
pages = "1--30",
month = "",
year = "1992",
CODEN = "HYPEEW",
ISSN = "0955-8543",
bibdate = "Wed Oct 30 06:04:36 MST 1996",
abstract = "The authors' goal is to elaborate the relationships
among tasks, user types, and tools for hypertext. They
built a computer system for automatically converting
books into hypertext and then converted one book into
Emacs-Info, Guide, HyperTies, and a variant of
SuperBook, called MaxiBook. Three classes of users were
studied: experts, novices, and trainees. Users
performed two question-answering tasks: one for a
search question and one for a browse question. The
answer to a search question could be found in one
section of the book, whereas the answer to a browse
question occurred across sections. Answers were
evaluated for quality and speed. Experts did good
searching with Guide and MaxiBooks, but the best
browsing with paper. For novices, paper was the best
tool on all counts-for quality and speed, for searching
and browsing. Trainee experiences were similar to those
of novices.",
acknowledgement = ack-nhfb,
affiliation = "Dept. of Comput. Sci., Liverpool Univ., UK",
classification = "C7250 (Information storage and retrieval); C6160Z
(Other DBMS)",
keywords = "Browsing; User types; Hypertext; Emacs-Info; Guide;
HyperTies; SuperBook; MaxiBook; Searching",
pubcountry = "UK",
thesaurus = "Human factors; Hypermedia; Information retrieval",
}
@Book{Roberts:1992:UDG,
author = "Ralph Roberts and Mark Boyd",
title = "{UNIX} Desktop Guide to {Emacs}",
publisher = pub-HAYDEN,
address = pub-HAYDEN:adr,
pages = "xxiii + 504",
year = "1992",
ISBN = "0-672-30171-7",
ISBN-13 = "978-0-672-30171-1",
LCCN = "QA76.76.T49 R62 1992",
bibdate = "Sun Mar 6 17:32:25 1994",
price = "US\$27.95, CDN\$34.95",
series = "Programming series",
acknowledgement = ack-nhfb,
keywords = "Word processing.; UNIX (Computer operating system);
EMACS (Computer program)",
libnote = "Not in my library.",
}
@Book{Schoonover:1992:GEU,
author = "Michael A. Schoonover and John S. Bowie and William R.
(William Robert) Arnold",
title = "{GNU} Emacs: {UNIX} text editing and programming",
publisher = pub-AW,
address = pub-AW:adr,
pages = "xxvii + 609",
year = "1992",
ISBN = "0-201-56345-2",
ISBN-13 = "978-0-201-56345-0",
LCCN = "QA76.76.T49S36",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
series = "Hewlett-Packard Press series",
acknowledgement = ack-nhfb,
keywords = "GNU Emacs.; UNIX (Computer file); Text editors
(Computer programs)",
}
@Article{Stading:1992:CBB,
author = "James Stading and Tom Thompson and Ben Smith",
title = "Creating {Bit-Mapped} Buttons: {A Windows} file
manager, {Telnet} for {Macs}, and dired sans emacs",
journal = j-BYTE,
volume = "17",
number = "10",
pages = "275--??",
month = oct,
year = "1992",
CODEN = "BYTEDJ",
ISSN = "0360-5280",
bibdate = "Wed Oct 30 06:32:55 MST 1996",
abstract = "A Windows file manager, Telnet for Macs, and dired
sans emacs.",
acknowledgement = ack-nhfb,
}
@Book{Stallman:1992:GEM,
author = "Richard Stallman",
title = "{GNU Emacs} manual",
publisher = pub-FSF,
address = pub-FSF:adr,
edition = "7th, {Emacs} version 18",
pages = "xii + 340",
month = sep,
year = "1992",
ISBN = "1-882114-01-9",
ISBN-13 = "978-1-882114-01-6",
LCCN = "????",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
keywords = "GNU Emacs.",
}
@Book{Stallman:1992:TMT,
author = "Richard M. Stallman",
title = "The {Termcap} Manual: The {Termcap} Library and Data
Base",
publisher = pub-FSF,
address = pub-FSF:adr,
edition = "Second",
pages = "????",
month = dec,
year = "1992",
ISBN = "????",
ISBN-13 = "????",
LCCN = "????",
bibdate = "Wed Sep 20 10:36:28 2000",
acknowledgement = ack-nhfb,
}
@Manual{Stallman:1992:UGG,
author = "Richard Stallman and Roland H. Pesch and John
Gilmore",
title = "Using {GDB}: a guide to the {GNU} source-level
debugger",
organization = pub-FSF,
address = pub-FSF:adr,
edition = "4.01, for {GDB} version 4.4",
pages = "vi + 172",
year = "1992",
bibdate = "Thu Oct 31 08:43:55 MST 1996",
acknowledgement = ack-nhfb,
}
@Manual{Stallman:1992:UPG,
author = "Richard Stallman",
title = "Using and porting {GNU CC}: last updated 15 February
1992 for version 2.0",
organization = pub-FSF,
address = pub-FSF:adr,
pages = "vi + 330",
year = "1992",
LCCN = "CM.3.1.01 item 3 Computer manuals",
bibdate = "Thu Oct 31 08:43:55 MST 1996",
note = "Preliminary draft, which will change.",
acknowledgement = ack-nhfb,
}
@Article{Thorup:1992:GEF,
author = "Kresten Krab Thorup",
title = "{GNU emacs} as a front end to {\LaTeX}",
journal = j-TUGboat,
volume = "13",
number = "3",
pages = "304--308",
month = oct,
year = "1992",
ISSN = "0896-3207",
}
@Article{Wang:1992:EAT,
author = "Weigang Wang and R. Rada and K. Strickland and C.
Ghaoui",
title = "An expertext authoring tool",
journal = j-INFO-DECISION-TECHNOLOGIES,
volume = "18",
number = "2",
pages = "101--114",
month = "",
year = "1992",
CODEN = "IDTEEI",
ISSN = "0923-0408",
bibdate = "Wed Oct 30 06:04:36 MST 1996",
abstract = "The paper describes the design and implementation of
an authoring tool which facilitates the identification
of a logical path through a hypertext network. The
authors model of hypertext is based on link objects
which specify source and target nodes, point to text,
and contain other information about the type of link
object and how it should be traversed. Additionally, a
knowledge base is provided by the system which the
author can edit and which determines how the hypertext
network is edited and how it is traversed in the course
of generating linear documents. In this way minor
modifications to the knowledge base can readily lead to
significant reorganizations of a document. The tool
supports both a hypertext browser of the documents and
the printing of the documents.",
acknowledgement = ack-nhfb,
affiliation = "Dept. of Comput. Sci., Liverpool Univ., UK",
classification = "C6130D (Document processing techniques); C7106 (Word
processing); C6170 (Expert systems)",
keywords = "Document reorganisation; Source nodes; Writing aid;
Writing models; Document outline; Note-taking;
Emacs-Info; Expertext authoring tool; Logical path;
Hypertext network; Link objects; Target nodes; Link
object; Knowledge base; Linear documents; Hypertext
browser",
pubcountry = "Netherlands",
thesaurus = "Expert systems; Hypermedia; Word processing",
}
@Article{Yang:1992:ADU,
author = "Y. Yang",
title = "Anatomy of the design of an undo support facility",
journal = j-INT-J-MAN-MACHINE-STUDIES,
volume = "36",
number = "1",
pages = "81--95",
month = jan,
year = "1992",
CODEN = "IJMMBC",
ISSN = "0020-7373",
bibdate = "Wed Oct 30 06:04:36 MST 1996",
abstract = "The paper presents decision making elements in an
anatomy of the design of undo support in the GNU Emacs
environment. Apart from providing design guidelines for
undo support, it illustrates how to bring a design from
an abstract conception to a concrete realization and
how to balance trade-offs in the process. Undo support
is a usability feature of interactive computer systems
which allows a user to reverse the effects of executed
commands. GNU Emacs was chosen as a suitable
environment to demonstrate how to design undo support
because of its sophistication and practical
significance. User's opinions about which aspects of
the existing undo support facility in Emacs need to be
improved were solicited by conducting an informal
survey among Emacs users. The results of the survey are
discussed and were used to tailor a proposal for an
improved undo support facility for Emacs. In order to
test the adequacy of the proposal, it was subjected to
an informal expert walk-through and a review of Emacs
users opinions was conducted through a computer
network. These evaluations are discussed and revisions
to the proposal elicited. After the revised prototype
of the design was implemented, a post-mortem evaluation
was carried out and its results were incorporated in
the final implementation.",
acknowledgement = ack-nhfb,
affiliation = "St. Hilda's Coll., Oxford, UK",
classification = "C6150J (Operating systems); C6180 (User
interfaces)",
keywords = "Operating systems; Undo support facility; Decision
making elements; GNU Emacs environment; Design
guidelines; Usability feature; Interactive computer
systems; Executed commands; Informal expert
walk-through; Computer network",
pubcountry = "UK",
thesaurus = "Operating systems [computers]; User interfaces",
}
@Article{Anonymous:1993:GCT,
author = "Anonymous",
title = "{GNU C} tools move to {MS-DOS} for {H8\slash} 300
{micronC}",
journal = j-EDN,
volume = "38",
number = "5",
pages = "66--??",
month = mar,
year = "1993",
CODEN = "EDNSBH",
ISSN = "0012-7515",
bibdate = "Tue Oct 29 19:42:28 MST 1996",
acknowledgement = ack-nhfb,
searchkey = "ti:gnu or gawk",
}
@Article{Anonymous:1993:GST,
author = "Anonymous",
title = "{GNU} Set to Take on {UNIX}",
journal = j-SOFTWARE-MAG,
volume = "13",
number = "6",
pages = "33--??",
month = apr,
year = "1993",
CODEN = "SMWMEQ",
ISSN = "0897-8085",
bibdate = "Tue Oct 29 19:42:28 MST 1996",
acknowledgement = ack-nhfb,
searchkey = "ti:gnu or gawk",
}
@Article{Becker:1993:TEG,
author = "Thomas Becker",
title = "Two extensions to {GNU Emacs} that are useful when
editing {\TeX} documents",
journal = j-TUGboat,
volume = "14",
number = "4",
pages = "382--386",
month = dec,
year = "1993",
ISSN = "0896-3207",
}
@MastersThesis{Birkholz:1993:ELE,
author = "Matthew Birkholz",
title = "{Emacs Lisp in Edwin Scheme}",
type = "Thesis (M.S.)",
school = "MIT Artificial Intelligence Laboratory",
address = "Cambridge, MA, USA",
pages = "81 (or 103??)",
year = "1993",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
note = "Also issued as Technical report AI-TR 1451.",
URL = "ftp://publications.ai.mit.edu/ai-publications/1993/AITR-1451.ps.Z",
abstract = "The MIT-Scheme program development environment
includes a general-purpose text editor, Edwin, that has
an extension language, Edwin Scheme. Edwin is very
similar to another general-purpose text editor, GNU
Emacs, which also has an extension language, Emacs
Lisp. The popularity of GNU Emacs has lead to a large
library of tools written in Emacs Lisp. The goal of
this thesis is to implement a useful subset of Emacs
Lisp in Edwin Scheme. This subset was chosen to be
sufficient for simple operation of the GNUS news
reading program.",
acknowledgement = ack-nhfb,
annote = "This report is a revised version of a thesis submitted
to the Dept. of Electrical Engineering and Computer
Science in Sept. 1993, in partial fulfillment of the
requirements for the degree of Master of Science.
Supported by the Advanced Research Projects Agency of
the Dept. of Defense under an Office of Naval Research
contract. Supported by the National Science
Foundation.",
contract = "N00014-92-J-4097, NSF MIP-9001651",
keywords = "Scheme, extension language, editor, multi-language
environment, interpreted language",
}
@InProceedings{Buckland:1993:OPG,
author = "M. K. Buckland and M. H. Butler and B. A. Norgard and
C. J. Plaunt",
title = "{OASIS}: prototyping graphical interfaces to networked
information",
crossref = "Bonzi:1993:APA",
pages = "204--210",
month = "",
year = "1993",
bibdate = "Wed Oct 30 05:56:55 MST 1996",
abstract = "The OASIS project is undergoing a complete revision in
order to give it a flexible graphical interface, more
powerful analysis tools, and broader searching
capabilities. A new X Windows interface is being linked
to a search and analysis backend written primarily in
Emacs Lisp to take advantage of its advanced string
processing functions and multiple buffering features.
The structure of OASIS will be more object-oriented,
implementing modules that can be modified, reused, and
recombined. Original OASIS features, such as FEWER,
SUMMARIZE, and SORT, have been retained and enhanced.",
acknowledgement = ack-nhfb,
affiliation = "California Univ., Berkeley, CA, USA",
classification = "C7250N (Front end systems for online searching);
C6180G (Graphical user interfaces)",
keywords = "Graphical interfaces; Networked information; Flexible
graphical interface; Analysis tools; Searching
capabilities; X Windows interface; Emacs Lisp;
Object-oriented approach",
thesaurus = "Graphical user interfaces; Online front-ends",
}
@Book{Chassell:1993:TGD,
author = "Robert J. Chassell and Richard Stallman",
title = "Texinfo: the {GNU} documentation format",
publisher = pub-FSF,
address = pub-FSF:adr,
edition = "2.19, for {Texinfo} version three",
pages = "x + 242",
month = dec,
year = "1993",
ISBN = "1-882114-46-9",
ISBN-13 = "978-1-882114-46-7",
LCCN = "????",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
keywords = "GNU Emacs (Computer program); Texinfo.; Software
documentation.; Text editors (Computer programs)",
}
@TechReport{Childs:1993:GER,
author = "Bart Childs",
title = "{GNU Emacs} Reference Card (with web-mode)",
type = "\path|ftp.cs.tamu.edu:/pub/tex-web/web/DOCs|",
institution = "Texas A\&M University",
address = "College Station, TX, USA",
year = "1993",
bibdate = "Wed Aug 24 17:50:54 1994",
acknowledgement = ack-bc,
}
@InProceedings{Eigenmann:1993:PTO,
author = "R. Eigenmann and P. McClaughry",
title = "Practical tools for optimizing parallel programs",
crossref = "Tentner:1993:HPC",
pages = "160--165",
month = "",
year = "1993",
bibdate = "Wed Oct 30 05:56:55 MST 1996",
abstract = "A set of tools are described that help a programmer to
be more efficient in optimizing scientific programs for
a parallel computer. The design of these tools emerged
from experience gained during a successful optimization
effort on a set of representative supercomputer
application codes. The authors have developed a number
of utilities that complement available UNIX tools.
Additional tools offer a higher degree of
interactivity; they are currently built into the Emacs
editor. The new tools mainly facilitate two development
phases that were identified as time-consuming in the
parallel programming project: the process of creating
and maintaining a consistent set of experimental
program variants and the analysis and interpretation of
compilation and performance results.",
acknowledgement = ack-nhfb,
affiliation = "Center for Supercomput. Res. and Dev., Illinois Univ.,
Urbana-Champaign, IL, USA",
classification = "C6110P (Parallel programming); C6150C (Compilers,
interpreters and other processors); C6150E (General
utility programs); C6115 (Programming support)",
keywords = "Scientific programs; Parallel computer; Supercomputer
application codes; UNIX tools; Emacs editor; Parallel
programming project; Experimental program variants;
Compilation",
thesaurus = "Parallel programming; Program compilers; Software
tools; UNIX; Utility programs",
}
@InProceedings{Feldman:1993:AAU,
author = "M. B. Feldman",
title = "{Ada83} and {Ada9x} in the universities: filling the
pipeline",
crossref = "ACM:1993:WTA",
pages = "106",
month = "",
year = "1993",
bibdate = "Wed Nov 27 15:44:00 1996",
abstract = "Ada is starting to catch on in the colleges and
universities, growing more rapidly than many in
industry realize. Currently Ada is used as a first year
foundation language in about 100 institutions; thus,
several thousand students a year begin their higher
education with Ada. Ada is taught, somewhere in the
curriculum, in several hundred more institutions; the
number grows each year. Important factors in this
growth are: the availability of nearly two dozen Ada
texts oriented to undergraduate courses; the
availability of inexpensive and free Ada compilers;
teachers' belated recognition that using Ada really
does lead to much more robust and portable programs. We
hope that the trend to Ada in the academic world will
accelerate with the release of the GNU Ada9X (GNAT)
translator and other Ada9X materials, and with
teachers' eventual disillusionment with the poor
robustness and portability of the alternative teaching
languages.",
acknowledgement = ack-nhfb,
affiliation = "Dept. of Electr. Eng. and Comput. Sci., George
Washington Univ., Washington, DC, USA",
classification = "C0220 (Computing education and training); C7810C
(Computer-aided instruction); C6140D (High level
languages); C6150C (Compilers, interpreters and other
processors)",
keywords = "Ada83; Ada9x; Universities; Colleges; First year
foundation language; Curriculum; Ada texts;
Undergraduate courses; Free Ada compilers; Portable
programs; GNAT; Translator; Teaching languages",
thesaurus = "Ada; Computer aided instruction; Computer science
education; Program interpreters; Teaching",
}
@InProceedings{Fowler:1993:SS,
author = "G. Fowler",
title = "The shell as a service",
crossref = "Anonymous:1993:PSU",
pages = "267--277",
month = "",
year = "1993",
bibdate = "Wed Oct 30 05:56:55 MST 1996",
abstract = "This paper explores the design history of the nmake
shell coprocess. Originally a special purpose
uniprocessor executor, the coshell has evolved into a
general purpose service that automatically executes
shell actions on lightly loaded hosts in a local
network. A major thrust of this work has been ease of
use. The only privilege required for installation,
administration or use is rsh access to the local hosts.
nmake and GNU-make users can take advantage of network
execution with no makefile modifications. Shell level
access is similar to but more efficient than rsh and
allows host expression matching to replace the explicit
host name argument. Also provided is a C programming
library interface with five primitive operations that
follow the fork-exec-wait process model. coshell runs
on most S5R4 and BSD UNIX operating system variants.",
acknowledgement = ack-nhfb,
affiliation = "AT and T Bell Labs., Murray Hill, NJ, USA",
classification = "C6150J (Operating systems)",
keywords = "Nmake shell coprocess; Special purpose uniprocessor
executor; Coshell; General purpose service; Lightly
loaded hosts; Local network; Network execution;
Makefile modifications; Host expression matching;
Explicit host name argument; C programming library
interface; S5R4; BSD UNIX; Operating system",
thesaurus = "Local area networks; Operating systems [computers];
Supervisory programs",
}
@Book{Gillespie:1993:CM,
author = "Dave Gillespie",
title = "Calc manual",
publisher = pub-FSF,
address = pub-FSF:adr,
edition = "{GNU Emacs} version 2.02",
pages = "x + 572",
year = "1993",
ISBN = "1-882114-18-3",
ISBN-13 = "978-1-882114-18-4",
LCCN = "????",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
keywords = "Calc (Computer program).; GNU Emacs (Computer
program).",
}
@InProceedings{Handa:1993:MME,
author = "K. Handa and M. Nishikimi and S. Tomura",
title = "Mule: {A MULtilingual} Enhancement to {GNU} Emacs",
crossref = "Leiner:1993:IIN",
pages = "GAB 1--9",
year = "1993",
bibdate = "Tue Oct 29 19:42:28 MST 1996",
acknowledgement = ack-nhfb,
searchkey = "ti:gawk or gnu",
}
@Article{Harrold:1993:ECP,
author = "M. J. Harrold and B. Malloy and G. Rothermel",
title = "Efficient construction of program dependence graphs",
journal = j-SIGSOFT-SOFTWARE-ENG-NOTES,
volume = "18",
number = "3",
pages = "160--170",
month = jul,
year = "1993",
ISSN = "0163-5948",
bibdate = "Wed Oct 30 05:59:54 MST 1996",
abstract = "A technique is presented for constructing a program
dependence graph that contains a program's control
flow, along with the usual control and data dependence
information. The algorithm constructs a program
dependence graph while the program is being parsed. For
programs containing only structured transfers of
control, the algorithm does not require information
provided by the control flow graph or post dominator
trees and therefore obviates the construction of these
auxiliary graphs. For programs containing explicit
transfers of control, the algorithm adjusts the partial
control dependence subgraph, constructed during the
parse, to incorporate exact control dependence
information. There are several advantages to the
approach. The algorithm may result in substantial
savings in time and memory since the construction of
the program dependence graph does not require the
auxiliary graph. Furthermore, since the authors
incorporate control and data flow as well as exact
control dependence information into the program
dependence graph, the graph has a wide range of
applicability. They have implemented the algorithm by
incorporating it into the Free Software Foundation's
GNU C compiler.",
acknowledgement = ack-nhfb,
affiliation = "Dept. of Comput. Sci., Clemson Univ., SC, USA",
classification = "C6150G (Diagnostic, testing, debugging and
evaluating systems); C4240 (Programming and algorithm
theory); C6150C (Compilers, interpreters and other
processors)",
keywords = "Program dependence graph; Control flow; Data
dependence information; Post dominator trees; Auxiliary
graphs; Partial control dependence subgraph; Data flow;
Exact control dependence information; GNU C compiler",
thesaurus = "Graphs; Program compilers; Program testing;
Programming theory",
}
@Book{Higham:1993:HWM,
author = "Nicholas J. Higham",
title = "Handbook of Writing for the Mathematical Sciences",
publisher = pub-SIAM,
address = pub-SIAM:adr,
pages = "xii + 241",
month = jun,
year = "1993",
ISBN = "0-89871-314-5",
ISBN-13 = "978-0-89871-314-5",
LCCN = "QA42.H54 1993",
bibdate = "Mon Oct 4 08:48:35 1993",
price = "US\$21.50",
acknowledgement = ack-njh,
note-1 = "[From the publisher]: Having trouble with your latest
math paper? Giving a presentation that you just can't
pull together? Struggling with your thesis or trying to
get your first article published in a technical
journal? Handbook of Writing for the Mathematical
Sciences is the book for you!
This handy volume provides information on virtually
every issue you will face when writing a technical
paper or talk, from choosing the right journal to
handling your references. You'll also get an overview
of the entire publication process--invaluable for
anyone hoping to publish in a technical journal.",
note-2 = "To write a truly impressive paper, you'll need to
understand the anatomy of a research paper and the
steps involved in revising a draft. This book offers
discussions of these fundamental topics, along with
illustrative and provocative examples. Also included
are chapters on standard English usage, using computers
for writing and research, and writing technical
material when English is a foreign language.
This handbook provides much-needed advice on handling
the basic ingredients of a research paper, like
definitions, theorems, examples, and equations. In
addition, appendices provide essential reference
material, including summaries of \LaTeX{} symbols and
Emacs commands, addresses of mathematical societies,
and a list of papers that have won expository writing
prizes.",
note-3 = "This book is ideal for graduate students and teachers.
Among its special features:
\begin{itemize} \item Detail and extensive use of
examples make it an excellent teaching tool
\item Discusses \TeX{} and other software tools for
preparing publications
\item Thorough treatment, with examples, of how to
write slides (transparencies) for a mathematical
talk.
\item Comprehensive index and extensive bibliography
make it an excellent reference
\item Readable for everyone in the field--from
undergraduates to seasoned professionals
\end{itemize}",
note-4 = "Contents \\
Preface; \\
Chapter 1: General Principles; \\
Chapter 2: Writer's Tools and Recommended Reading; \\
Chapter 3: Mathematical Writing; \\
Chapter 4: English Usage; \\
Chapter 5: When English is a Foreign Language; \\
Chapter 6: Writing a Paper; \\
Chapter 7: Revising a Draft; \\
Chapter 8: Publishing a Paper; \\
Chapter 9: Writing a Talk; \\
Chapter 10: Computer Aids for Writing and Research; \\
Appendix A: The Greek Alphabet; \\
Appendix B: Summary of \TeX{} and \LaTeX{} Symbols; \\
Appendix C: GNU Emacs--The Sixty+ Most Useful Commands;
\\
Appendix D: Mathematical Organizations in the UK and
USA; \\
Appendix E: Winners of Prizes for Expository Writing;
\\
Appendix F: Glossary; \\
Bibliography; \\
Index.\\
About the Author:\\
Nicholas J. Higham is a Reader in Mathematics at the
University of Manchester, UK. He is the author of more
than 40 publications and is a member of the editorial
board of the SIAM Journal on Matrix Analysis and
Applications.",
}
@Article{Kahle:1993:IDS,
author = "B. Kahle and H. Morris and J. Goldman and T. Erickson
and J. Curran",
title = "Interfaces for distributed systems of information
servers",
journal = j-J-AM-SOC-INF-SCI,
volume = "44",
number = "8",
pages = "453--467",
month = sep,
year = "1993",
CODEN = "AISJB6",
ISSN = "0002-8231",
bibdate = "Wed Oct 30 05:59:54 MST 1996",
abstract = "This article describes five interfaces to distributed
systems of servers that have been designed and
implemented: WAIStation for the Macintosh, XWAIS for
X-Windows, GWAIS for GNU-Emacs, SWAIS for dumb
terminals, and Rosebud for the Macintosh. These
interfaces talk to one of two server systems: the wide
area information server (WAIS) system on the Internet,
and the Rosebud Server System, on an internal network
at Apple Computer. Both server systems are built on
Z39.50, a standard protocol, and thus support access to
a wide range of remote databases.",
acknowledgement = ack-nhfb,
affiliation = "WAIS Inc., Menlo Park, CA, USA",
classification = "C7250N (Front end systems for online searching);
C7250 (Information storage and retrieval)",
keywords = "Information retrieval; Distributed systems; Servers;
WAIStation; Macintosh; XWAIS; X-Windows; GWAIS;
GNU-Emacs; SWAIS; Dumb terminals; Rosebud; Interfaces;
Wide area information server; Internet; Apple Computer;
Z39.50; Standard protocol; Remote databases",
pubcountry = "USA",
thesaurus = "Information retrieval; Online front-ends; User
interfaces",
}
@Article{Knister:1993:IDT,
author = "M. Knister and A. Prakash",
title = "Issues in the design of a toolkit for supporting
multiple group editors",
journal = j-COMP-SYS,
volume = "6",
number = "2",
pages = "135--166",
month = "Spring",
year = "1993",
CODEN = "CMSYE2",
ISSN = "0895-6340",
bibdate = "Wed Oct 30 05:59:54 MST 1996",
abstract = "A great interest has developed in recent years in
building tools that allow people to collaborate on work
without the need for physical proximity. One such class
of tools, group editors, allows collaborators to view
and edit a shared document simultaneously from their
workstations. Building group editors, however, requires
solving non-trivial problems such as providing adequate
response time for edit operations and yet ensuring
consistency with concurrent updates, and providing
adequate per-user undo facilities. The authors have
implemented a toolkit, called DistEdit, for building
new interactive group editors and for converting
existing single-user editors into group editors with
minimal changes to their code. The toolkit allows
different users to use their favorite editors to edit a
shared file and observe each others' changes as they
occur. The toolkit provides fine-grain concurrency
control, fault-tolerance, synchronization of views, and
support for per-user undo. The authors describe the
detailed design and implementation of the DistEdit
toolkit and report their experiences in converting
several editors, including GNU Emacs and Xedit, to
group editors using the toolkit.",
acknowledgement = ack-nhfb,
affiliation = "Michigan Univ., Ann Arbor, MI, USA",
classification = "C6115 (Programming support); C6150N (Distributed
systems); C6130D (Document processing techniques)",
keywords = "Toolkit; Multiple group editors; Collaboration; Edit
operations; Concurrent updates; Per-user undo
facilities; DistEdit; Interactive group editors; Shared
file; Fine-grain concurrency control; Fault-tolerance;
View synchronization; GNU Emacs; Xedit",
pubcountry = "USA",
thesaurus = "Concurrency control; Fault tolerant computing;
Groupware; Software tools; Synchronisation; Text
editing",
}
@InProceedings{Kobayashi:1993:MGM,
author = "Y. Kobayashi and M. Nagata",
title = "A method for generating messages on the on-line help
system based on a user model and a situational model",
crossref = "Smith:1993:HIP",
pages = "621--626 (vol. 2)",
year = "1993",
bibdate = "Wed Oct 30 05:56:55 MST 1996",
abstract = "Messages sent from the existing on-line help systems
are either extremely simple or too difficult for the
novice user to comprehend. On the other hand, these
messages are often too narrow in context for the expert
user. One of the reasons for this is that the messages
are designed on the assumption that only one 'typical'
human model represents all users. In this paper a
method is proposed for generating suitable on-line help
system messages for each user level. In order to
implement this a user model is introduced reflecting
the skills of each user and a situational model for
each type of usage. The idea being to create a user
model and situational model where suitable messages are
generated. In this paper these models and our prototype
on-line help system for the Emacs editor are discussed.
Results of experimental use are also presented.",
acknowledgement = ack-nhfb,
affiliation = "Dept. of Adm. Eng., Keio Univ., Yokohama, Japan",
classification = "C6180 (User interfaces)",
keywords = "Online help system; Messages generation; User model;
Situational model; Emacs editor",
thesaurus = "Interactive systems; User interfaces",
}
@InProceedings{Kupfer:1993:SM,
author = "M. D. Kupfer",
title = "Sprite on Mach",
crossref = "Anonymous:1993:PUM",
pages = "307--322",
month = "",
year = "1993",
bibdate = "Wed Oct 30 05:56:55 MST 1996",
abstract = "Sprite is a distributed operating system that supports
a fast, single-image network file system and
transparent process migration. Over a period of 19
months we ported Sprite to run as a server on top of
the Mach 3.0 microkernel. Although the resulting server
does not implement some Sprite features, it can run in
an existing Sprite cluster, and it supports standard
UNIX programs like vi, gcc, and make. Porting Sprite to
Mach was generally straightforward, though there were
some difficulties. Many of the problems were related to
asynchronous interactions between the Sprite server,
Mach, and Sprite user processes. Others resulted from
trying to maintain native Sprite's internal interfaces
in the Sprite server. The Sprite server is 22\% smaller
than an equivalent Sprite kernel, and it contains
almost no machine-dependent code. These improvements
should significantly simplify porting Sprite to new
hardware platforms. Unfortunately, the Sprite server
runs the Andrew benchmark at only 38\% of the speed of
native Sprite. None of the performance problems appears
insurmountable, but they could require a long time to
track down and fix.",
acknowledgement = ack-nhfb,
affiliation = "California Univ., Berkeley, CA, USA",
classification = "C6150N (Distributed systems); C6150J (Operating
systems); C5620 (Computer networks and techniques)",
keywords = "Sprite; Distributed operating system; Single-image
network file system; Transparent process migration;
Server; Mach 3 microkernel; Standard UNIX programs;
Asynchronous interactions; User processes; Internal
interfaces; Andrew benchmark",
thesaurus = "File servers; Multiprocessing programs; Network
operating systems; UNIX",
}
@InProceedings{Lai:1993:AAD,
author = "Feipei Lai and Shu-Lin Hwang and Tzer-Shyong Chen and
Chia-Rung Hsieh",
title = "Arden - Architecture Development Environment",
crossref = "Baozong:1993:PTI",
pages = "5--9 (vol.1)",
year = "1993",
bibdate = "Wed Oct 30 05:56:55 MST 1996",
abstract = "This paper describes Arden, which is being developed
to help architecture design. Arden includes a
retargetable compiler and a back-end simulation tool
that uses the concepts of object-oriented programming
(OOP) to achieve model reusability. The code generator
in the Arden compiler uses a tree pattern matching
method for instruction selection. An experimental
bottom-up matching algorithm that reduces the pattern
matching to a numerical computation problem can reduce
the space complexity and the search time. A useful
instruction description language has been proposed to
simplify the architecture specifications. We have
implemented the DLX architecture with only 49 rules.
Arden has been able to output DLX assembly code and has
the same performance as GNU cc output.",
acknowledgement = ack-nhfb,
affiliation = "Dept. of Comput. Sci. and Inf. Eng., Nat. Taiwan
Univ., Taipei, Taiwan",
classification = "C7430 (Computer engineering); C5220 (Computer
architecture); C6110J (Object-oriented programming)",
keywords = "Arden; Architecture Development Environment;
Retargetable compiler; Back-end simulation tool;
Object-oriented programming; OOP; Model reusability;
Code generator; Tree pattern matching; Space
complexity; DLX architecture; Instruction description
language; Architecture specification",
thesaurus = "CAD; Computer architecture; Object-oriented
programming; Software reusability",
}
@Article{Lea:1993:GCL,
author = "D. Lea",
title = "The {GNU C++} library",
journal = j-C-PLUS-PLUS-REPORT,
volume = "5",
number = "5",
pages = "24--27",
month = jun,
year = "1993",
CODEN = "CRPTE7",
ISSN = "1040-6042",
bibdate = "Tue Sep 10 08:13:59 MDT 1996",
abstract = "The GNU C++ library (libg++) was one of the first
widely available general-purpose C++ class libraries.
Libg++ is mainly an `abstract data structure library'.
Most libg++ classes are somewhat different in design
philosophy, design, and implementation than the classes
ordinarily constructed for specific application. This
article focuses mainly on these differences without
otherwise going into much detail about particular
components.",
acknowledgement = ack-nhfb,
affiliation = "Dept. of Comput. Sci., State Univ. of New York, NY,
USA",
classification = "C6140D (High level languages); C6110J
(Object-oriented programming)",
keywords = "GNU C++ library; General-purpose C++ class libraries;
Libg++; Abstract data structure library",
pubcountry = "USA",
thesaurus = "Abstract data types; C language; Object-oriented
languages; Object-oriented programming; Software
reusability",
}
@MastersThesis{Leitz:1993:LEI,
author = "Martin Leitz",
title = "{LMAKE --- Entwurf und Implementierung eines
parallelen Make-Programmes}",
school = "Technische Universit{\"a}t Braunschweig",
address = "Braunschweig, Germany",
year = "1993",
bibsource = "Misc/TUBScsd/1993.bib",
annote = "Beschreibung und Bewertung des ISIS-Programmpaketes;
Vergleich der parallelen Make-Programme ISIS-PMAKE und
GNU/Customs-MAKE; Entwurf, Implementierung und
Leistungsbewertung von LMAKE.",
descriptor = "Make, Verteiltes System",
}
@Book{Lewis:1993:GEL,
author = "Bil Lewis and Daniel LaLiberte and {GNU Manual
Group}",
title = "{GNU} Emacs Lisp reference manual",
publisher = pub-FSF,
address = pub-FSF:adr,
edition = "2.1",
pages = "xiv + 570",
month = sep,
year = "1993",
ISBN = "1-882114-40-X",
ISBN-13 = "978-1-882114-40-5",
LCCN = "????",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
annote = "GNU Emacs Version 18 for UNIX users.",
keywords = "Emac Lisp (Computer program language); Programming
languages (Electronic computers)",
}
@Book{Nicol:1993:FLS,
author = "G. T. Nicol",
title = "{Flex}: The Lexical Scanner Generator, for {Flex}
Version 2.3.7",
publisher = pub-FSF,
address = pub-FSF:adr,
pages = "128 (est.)",
year = "1993",
ISBN = "1-882114-21-3",
ISBN-13 = "978-1-882114-21-4",
LCCN = "????",
bibdate = "Wed Sep 20 10:36:28 2000",
URL = "http://www.gnupress.org/book11.html",
acknowledgement = ack-nhfb,
}
@InProceedings{Pesch:1993:GID,
author = "R. H. Pesch",
title = "{GNU} Info: a decade of hypertext experience",
crossref = "ACM:1993:CPS",
pages = "233--240",
month = "",
year = "1993",
bibdate = "Wed Oct 30 05:42:27 MST 1996",
abstract = "Proprietary software vendors are beginning to awaken
to the benefits of online hypertext documentation.
Meanwhile, for over a decade, users and developers of
free software have been exploiting the hypertext Info
documentation format (first introduced by Richard
Stallman around 1976). GNU Info formatters and readers
are highly portable, running (at least) on all UNIX
systems, DOS, VMS, Commodore Amiga and Atari ST; they
support hypertext links both within and between
documents, including a rich structure of automatic
links between the sections of a manual; they provide
both integrated index generation and dynamic, arbitrary
text searching; and they permit the generation both of
printed manuals and online hypertext from a single
source.",
acknowledgement = ack-nhfb,
affiliation = "Cygnus Support, Mountain View, CA, USA",
classification = "C6130D (Document processing techniques); C6130M
(Multimedia)",
keywords = "GNU Info; Online hypertext documentation; Free
software; Documentation format; Text formatters; Text
readers; UNIX systems; MS-DOS; VMS; Commodore Amiga;
Atari ST; Hypertext links; Manual sections; Integrated
index generation; Dynamic text searching; Printed
manuals",
thesaurus = "Document handling; Hypermedia; Indexing; Public domain
software; System documentation; User manuals",
}
@InProceedings{Phillips:1993:SDQ,
author = "N. C. K. Phillips",
title = "Stream driven query processing in a database",
crossref = "Deaton:1993:ACS",
pages = "593--597",
month = "",
year = "1993",
bibdate = "Wed Oct 30 05:56:55 MST 1996",
abstract = "The author describes a concurrent mechanism for
processing database queries. The database is assumed to
be relational and the different relations comprising
the database may, if necessary, reside on different
computers (linked in a network). The author
investigates the feasibility of using concurrency
synchronized by data flow constraints. At the top
level, the database query manager/interpreter is
written in Strand. Upon interpreting a given query,
this manager evolves into a network of processes
appropriate to the efficient processing of the query.
The manager's lower level routines are derived from
those of the GNU dbm library. Overall, this approach
combines the elegance of programming in a declarative,
parallel language with the efficiency of using existing
database routines written in C. The author presents an
overview of the Strand programming environment and
describes the particular database upon which some
example queries are based. He covers the processing of
a specific query in detail describing the network of
processors that result upon interpreting the query and
the concurrency exploited in processing the query. He
presents other examples of query processing and
compares the present approach with an earlier approach
based on a Or-parallel Prolog system. A brief overview
is given of the derivation of the 'base' routines from
those routines provided in the GNU dbm library.",
acknowledgement = ack-nhfb,
affiliation = "Southern Illinois Univ., Carbondale, IL, USA",
classification = "C6160D (Relational DBMS); C4250 (Database theory);
C6150N (Distributed systems); C4240P (Parallel
programming and algorithm theory); C6110P (Parallel
programming); C6110L (Logic programming); C6140D (High
level languages)",
keywords = "Stream driven query processing; Concurrent mechanism;
Concurrent database query processing; Relational DBMS;
Data flow constraints; Database query
manager/interpreter; Lower level routines; GNU dbm
library; Declarative parallel language; Database
routines; C; Strand programming environment;
Or-parallel Prolog system",
thesaurus = "Concurrency control; Logic programming; Parallel
languages; Parallel programming; Query processing;
Relational databases",
}
@MastersThesis{Reid:1993:IE,
author = "Jonathan Makoto Reid",
title = "Internationalizing Emacs",
type = "Printout. Thesis (M.S.)",
school = "University of Illinois at Urbana-Champaign",
address = "Urbana-Champaign, IL 61801, USA",
pages = "v + 79",
year = "1993",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
}
@Manual{Stallman:1993:DGG,
author = "Richard Stallman and Roland H. Pesch",
title = "Debugging with {GDB}: the {GNU} source-level
debugger",
organization = pub-FSF,
address = pub-FSF:adr,
edition = "4.09 for {GDB} version 4.9",
pages = "vi + 174",
year = "1993",
LCCN = "QA76.9.D43 S73 1993",
bibdate = "Thu Oct 31 17:45:16 2002",
note = "Previous edition published under title: The GDB
manual. August 1993.",
acknowledgement = ack-nhfb,
keywords = "gdb (computer file); debugging in computer science --
computer programs",
}
@Book{Stallman:1993:GEMa,
author = "Richard Stallman",
title = "{GNU Emacs} manual",
publisher = pub-FSF,
address = pub-FSF:adr,
edition = "8th, {Emacs} version 19",
pages = "xiv + 392",
month = jun,
year = "1993",
ISBN = "1-882114-02-7",
ISBN-13 = "978-1-882114-02-3",
LCCN = "????",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
keywords = "GNU Emacs.; Text editors (Computer programs)",
}
@Book{Stallman:1993:GEMb,
author = "Richard M. Stallman",
title = "{GNU Emacs} manual",
publisher = pub-FSF,
address = pub-FSF:adr,
edition = "9th, {Emacs} version 19.19",
pages = "xiv + 404",
month = aug,
year = "1993",
ISBN = "1-882114-03-5",
ISBN-13 = "978-1-882114-03-0",
LCCN = "????",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
bibsource = "Os/unix.2.bib, Misc/unix.2.bib",
note = "This is the official manual for GNU Emacs. It is
available both as a typeset document, and online in the
Emacs {\tt info} system.",
acknowledgement = ack-nhfb,
keywords = "GNU Emacs (Computer program).; Text editors (Computer
programs).; Computer software --- Development.",
}
@Article{Stevens:1993:GQP,
author = "Roger T. Stevens",
title = "Get Quick, Professional Plots with {GNUPLOT}",
journal = j-CUJ,
volume = "11",
type = "User Report",
number = "6",
pages = "99--??",
month = jun,
year = "1993",
ISSN = "0898-9788",
bibdate = "Fri Aug 30 16:52:23 MDT 1996",
bibsource = "http://www.cuj.com/cbklist.htm",
acknowledgement = ack-nhfb,
}
@InProceedings{Tiemann:1993:SRP,
author = "Michael D. Tiemann",
title = "Solving the {RPC} Problem in {GNU C++}",
crossref = "Waldo:1993:ECL",
pages = "217--233",
year = "1993",
bibdate = "Thu Feb 22 08:12:14 MST 1996",
bibsource = "http://www.usenix.org/,
ftp://ftp.uu.net/library/bibliography",
note = "Editor: Jim Waldo.",
acknowledgement = ack-nhfb,
}
@Article{Valdes:1993:TEA,
author = "Ray Vald{\'e}s",
title = "Text Editors: Algorithms and Architectures",
journal = j-DDJ,
volume = "18",
number = "4",
pages = "38--??",
month = apr,
year = "1993",
CODEN = "DDJOEB",
ISSN = "1044-789X",
bibdate = "Tue Sep 03 09:15:39 1996",
bibsource = "http://www.ddj.com/index/author/index.htm, UnCover
database",
abstract = "From Stallman's GnuEmacs to Microsoft's Word, text
editors are one of the most taken-for-granted, yet most
often used, applications around. When done right,
however, the choice of core algorithms and how they're
implemented in the overall architecture can make the
difference between a good editor and a great one.",
acknowledgement = ack-nhfb,
}
@InProceedings{Wilken:1993:EMA,
author = "K. D. Wilken and T. Kong",
title = "Efficient memory access checking",
crossref = "IEEE:1993:FDP",
pages = "566--575",
month = aug,
year = "1993",
bibdate = "Wed Oct 30 05:47:28 MST 1996",
abstract = "A new approach provides efficient concurrent checking
of memory accesses using a signature embedded into each
instance of a data structure, and using a new
LOAD/STORE instruction that reads the data structure
signature as a side effect. Software memory-access
faults are detectable using this approach, including
corrupted pointers, uninitialized pointers, stale
pointers, and copy overruns. Hardware memory-access
faults are also detectable, including faults in the
memory access path and the register file. Instruction
scheduling minimizes the cost of the side-effect reads,
and signatures are checked with little overhead using
the hardware monitor previously proposed for signature
monitoring. Benchmark results for the MIPS R3000
executing code scheduled by a modified GNU C Compiler
show that an average of 53\% of the memory accesses are
checked, and that access checking causes an average of
less than 5\% performance overhead.",
acknowledgement = ack-nhfb,
affiliation = "Dept. of Electr. and Comput. Eng., California Univ.,
Davis, CA, USA",
classification = "C6120 (File organisation); C5310 (Storage system
design); C5470 (Performance evaluation and testing)",
keywords = "Software memory-access faults; Memory access checking;
Concurrent checking; Signature; Data structure;
LOAD/STORE instruction; Corrupted pointers;
Uninitialized pointers; Stale pointers; Copy overruns;
Register file; MIPS R3000; GNU C Compiler",
thesaurus = "Data structures; Fault tolerant computing",
}
@InProceedings{Yamamura:1993:AFM,
author = "K. Yamamura and T. Matsuura",
title = "Adapting the {Fujitsu}'s mainframe operating system
{MSP} to the open computing environment",
crossref = "Abe:1993:PWD",
pages = "40--45",
month = "",
year = "1993",
bibdate = "Wed Oct 30 05:59:54 MST 1996",
abstract = "In order to adapt the Fujitsu mainframe operating
system MSP to the open computing environment, such
preliminary attempts as porting the X-Lib and the
emacs, and implementing the 1 pr and the rsh to MSP
have been carried out. With these attempts,
interprocessor-connectivity, resource sharing
capability, and an attachment of a flavor of the
UNIX-like operational view have been partly realized on
the MSP environment. Future plans are also described.",
acknowledgement = ack-nhfb,
affiliation = "Syst. Eng. Dept., Fujitsu Ltd., Ibaraki, Japan",
classification = "C6150J (Operating systems); C6150N (Distributed
systems)",
keywords = "Open computing environment; Fujitsu mainframe
operating system; MSP; Interprocessor-connectivity;
Resource sharing capability; MSP environment",
thesaurus = "Open systems; Operating systems [computers]; Software
portability",
}
@Misc{Yggdrasil:1993:YLG,
author = "{Yggdrasil Computing, Inc}",
title = "{Yggdrasil Linux\slash GNU\slash X} operating system",
publisher = pub-YGGDRASIL,
address = pub-YGGDRASIL:adr,
year = "1993",
ISSN = "1069-3955",
bibdate = "Sat May 4 18:45:07 MDT 1996",
note = "1 computer laser optical disk.",
acknowledgement = ack-nhfb,
alttitle = "Yggdrasil Linux/GNU/X operating system Linux, GNU, X
operating system",
annote = "System requirements: 386/486 CPU, 8MB RAM, high
density floppy, 100 MB disk and SCSI CDROM drive with
Adaptec 1542B, Future Domain TMC-1660/1680, Seagate
ST01/02, Ultrastor 14F, or Western Digital 7000fasst
SCSI controller.",
}
@InProceedings{Alves:1994:CGA,
author = "J. Alves and M. Held and M. Glesner",
title = "A code generator for an application specific pipelined
processor",
crossref = "Yuksel:1994:MEC",
pages = "306--308 (vol. 1)",
year = "1994",
bibdate = "Wed Oct 30 05:47:28 MST 1996",
abstract = "The paper presents a system to generate and compact
microcode for an application specific pipelined
processor. The front end is based on the GNU C
compiler, and translates a C source file into pseudo
assembly code. A scheduler organizes the assembly
instructions and generates the final compacted
microcode. Although not as efficient as hand-written
code, it allows the use of a high level programming
language to generate machine code for this processor,
and to experiment with new algorithms to map onto the
special processor's architecture.",
acknowledgement = ack-nhfb,
affiliation = "INESC, Porto, Portugal",
classification = "C6115 (Programming support); C6150C (Compilers,
interpreters and other processors); C6140D (High level
languages); C5220P (Parallel architecture); C5440
(Multiprocessing systems); C6140B (Machine-oriented
languages)",
keywords = "Code generator; Application specific pipelined
processor; GNU C compiler; C source file; Pseudo
assembly code; Scheduler; Assembly instructions;
Hand-written code; High level programming language;
Machine code; Special processor architecture",
thesaurus = "Application generators; C language; Firmware;
Microprogramming; Pipeline processing; Program
compilers; Program interpreters; Software tools",
}
@Article{Arceneaux:1994:CGI,
author = "Joseph Arceneaux",
title = "{CUG392} --- {GNU} Indent {v1.8}",
journal = j-CUJ,
volume = "12",
type = "CUG New Release",
number = "1",
pages = "88--??",
month = jan,
year = "1994",
ISSN = "0898-9788",
bibdate = "Fri Aug 30 16:52:23 MDT 1996",
bibsource = "http://www.cuj.com/cbklist.htm",
acknowledgement = ack-nhfb,
}
@Article{Bagley:1994:EIT,
author = "S. C. Bagley and G. E. kopec",
title = "Editing images of text",
journal = j-CACM,
volume = "37",
number = "12",
pages = "63--72",
month = dec,
year = "1994",
CODEN = "CACMA2",
ISSN = "0001-0782",
bibdate = "Wed Oct 30 05:47:28 MST 1996",
abstract = "This article describes Image EMACS, a text editor for
scanned document images, which illustrates an
intermediate point between the bitmap editing and
format conversion paradigms. The aim of Image EMACS is
to provide familiar high level editing commands in a
context that preserves document appearance except where
the commands are actually applied. The inputs and
outputs of Image EMACS are binary images of text. The
primary document representation within Image EMACS is a
collection of image elements extracted through simple
geometrical analysis, rather than an abstract symbolic
description of the image. Image EMACS is based on a
principle of minimal interpretation: perform image
analysis only to the extent necessary to carry out
operations explicitly requested by the user. Adherence
to this principle avoids the format conversion problems
previously noted. Our approach also builds on existing
networks and protocols for communicating document
images and provides a natural and smoothly evolving
path from paper-based work flows toward the ubiquitous
use and interchange of electronic documents. Image
EMACS can be viewed as an extreme form of a WYSIWYG
(What You See Is What You Get) page composition
system.",
acknowledgement = ack-nhfb,
affiliation = "Syst. and Practices Lab., Xerox Palo Alto Res. Center,
CA, USA",
classification = "C6130D (Document processing techniques); C6130B
(Graphics techniques)",
keywords = "Image EMACS; Text editor; Scanned document images;
Bitmap editing; Format conversion paradigm; High level
editing commands; Primary document representation;
Geometrical analysis; Abstract symbolic description;
Minimal interpretation; Image analysis; Paper-based
work flows; Page composition system",
pubcountry = "USA",
thesaurus = "Computer graphics; Document image processing; Text
editing",
}
@InProceedings{Beattie:1994:TPT,
author = "M. Beattie",
title = "{TkPerl} --- a port of the {Tk} toolkit to {Perl5}",
crossref = "Anonymous:1994:PUS",
pages = "71--82",
month = "",
year = "1994",
bibdate = "Wed Oct 30 05:47:28 MST 1996",
abstract = "TkPerl is a port (work in progress) of the Tk toolkit
to Perl5. rr *. It takes advantage of Perl5's object
oriented features and magic variables to implement the
Tk toolkit in Perl5. Nothing passes through the Tcl
parser so knowledge of Tcl syntax is not required to
use TkPerl. TkPerl is freeware (distributed under the
GNU General Public License) and is currently in alpha
testing. The paper introduces TkPerl and presents a
brief section on its target uses. Since TkPerl relies
heavily on the object oriented features of Perl5 (which
is itself only just into beta test), the paper explains
how Perl5 implements classes, objects and methods. It
discusses the differences between Tk/Tcl and TkPerl
both at scripting level and at C level. It also looks
at some of the porting issues and problems and how Tcl
conventions affect the design of Tk itself. The current
intentions for the future of TkPerl are explained and
availability information is presented.",
acknowledgement = ack-nhfb,
affiliation = "Oxford Univ., UK",
classification = "C6140D (High level languages); C6110J
(Object-oriented programming); C6110B (Software
engineering techniques); C4210L (Formal languages and
computational linguistics)",
keywords = "TkPerl; Port; Tk toolkit; Perl5; Object oriented
features; Magic variables; Tcl parser; Tcl syntax;
Freeware; Classes; Scripting level; C level; Porting
issues",
thesaurus = "Grammars; High level languages; Object-oriented
programming; Public domain software; Software
portability",
}
@Article{Butt:1994:RDS,
author = "Farooq Butt",
title = "Rapid development of a source-level debugger for
{PowerPC} microprocessors",
journal = j-SIGPLAN,
volume = "29",
number = "12",
pages = "73--77",
month = dec,
year = "1994",
CODEN = "SINODQ",
ISSN = "0362-1340",
bibdate = "Sun Dec 14 09:16:58 MST 2003",
bibsource = "http://portal.acm.org/",
acknowledgement = ack-nhfb,
classification = "C5130 (Microprocessor chips); C6115 (Programming
support); C6140B (Machine-oriented languages); C6150C
(Compilers, interpreters and other processors); C6150G
(Diagnostic, testing, debugging and evaluating
systems)",
corpsource = "Compiler and Tools Group, RISC Software Group, Austin,
TX, USA",
keywords = "compile-edit-debug environment; design cycle times;
emergent microprocessors; gdb; instruction sets;
microprocessor chips; Motorola PowerPC 601
microprocessor; Motorola PowerPC 603 microprocessor;
PowerPC instruction set; PowerPC microprocessors;
program compilers; program debugging; rapid
development; software microprocessor simulator;
software tools; software-development development;
software-development environment; source-level
debugger; virtual machines",
treatment = "P Practical",
}
@Article{Comar:1994:GPG,
author = "C. Comar and F. Gasperoni and E. Schonberg",
title = "The {GNAT} project: a {GNU-ADA94} compiler",
journal = j-TECHNIQUE-SCI-INFORMATIQUES,
volume = "13",
number = "6",
pages = "817--836",
month = "",
year = "1994",
CODEN = "TTSIDJ",
ISSN = "0752-4072",
bibdate = "Wed Oct 30 05:47:28 MST 1996",
abstract = "The GNAT project at New York University is building a
high-quality Ada94 compiler, to be distributed free and
with sources, following the successful mechanisms
established by the Free Software Foundation for the Gcc
compiler. GNAT will allow students, academics, and
software professionals to experiment as early as
possible with the new version of Ada. GNAT will also
help the spread of Ada to the software community at
large.",
acknowledgement = ack-nhfb,
affiliation = "Courant Inst. of Math. Sci., New York Univ., NY, USA",
classification = "C6150C (Compilers, interpreters and other
processors); C6140D (High level languages)",
keywords = "GNAT project; GNU-ADA94 compiler; Software
professionals",
language = "French",
pubcountry = "France",
thesaurus = "Ada; Program compilers; Public domain software",
}
@InProceedings{Ertl:1994:PFE,
author = "M. A. Ertl",
title = "A portable {Forth} engine",
crossref = "Anonymous:1994:FCP",
pages = "253--257",
month = "",
year = "1994",
bibdate = "Wed Oct 30 05:42:27 MST 1996",
abstract = "The Forth engine discussed in this paper is written in
GNU C, which provides several extensions that are
important for Forth implementation. The indirect
threaded Forth engine is completely
machine-independent, direct threading requires a few
lines machine-specific lines for each machine. Using a
portable language like GNU C encourages producing an
engine with many primitives. In order to make the
development of primitives easier and less error-prone,
an automatic tool generates most of the code for a
Forth primitive from the stack effect notation, even if
the TOS is kept in a register. The engine is combined
with the parts of the system written in Forth by
loading a machine-independent image file that contains
the executable Forth code in relocatable form.",
acknowledgement = ack-nhfb,
affiliation = "Inst. fur Computersprachen, Tech. Univ. Wien,
Austria",
classification = "C6140D (High level languages); C6110B (Software
engineering techniques); C6115 (Programming support)",
keywords = "Portable Forth engine; GNU C; Indirect threaded Forth
engine; Machine-independent; Direct threading; Portable
language; Automatic tool; Code generation; Stack effect
notation; TOS; Machine-independent image file",
thesaurus = "Automatic programming; C language; FORTH; Software
portability; Software tools",
}
@InProceedings{Fine:1994:UCP,
author = "V. Fine and E. Potrebenikova",
title = "Using {CERNLIB}, {PAW} and {GEANT} packages on {PCs}
under {DJGPP}",
crossref = "Becks:1994:NCT",
pages = "151--156",
month = "",
year = "1994",
bibdate = "Wed Oct 30 05:56:55 MST 1996",
abstract = "The paper describes the result of porting the parts of
the CERN program library (release 93d) for high energy
physics on IBM PC AT/386-compatible computers under
MS-DOS and GNUish tools provided by Free Software
Foundation Inc. GCC is the GNU version of a
public-domain C compiler and is available on many
platforms. DJGPP is a special DOS Extender and port of
the GNU gcc/g++ compiler to the 386/DOS platform. This
allows 32-bit protected applications to be run under
MS-DOS with full virtual memory support. Various
libraries and utilities are provided also. F2C is a
Fortran to C converter. This work was supported by
CERN, FermiLab and JINR institutes.",
acknowledgement = ack-nhfb,
affiliation = "JINR, Dubna, Russia",
classification = "C7320 (Physics and chemistry computing); C6150C
(Compilers, interpreters and other processors); C6140D
(High level languages)",
keywords = "CERNLIB; PAW; GEANT packages; PCs; DJGPP; CERN program
library; High energy physics; IBM PC AT/386-compatible
computers; MS-DOS; GNUish tools; Free Software
Foundation Inc; GCC; GNU version; Public-domain C
compiler; DOS Extender; GNU gcc/g++ compiler; 386/DOS
platform; 32-Bit protected applications; Virtual memory
support; F2C; Fortran to C converter",
thesaurus = "C language; IBM computers; Microcomputer applications;
Physics computing; Program compilers; Public domain
software; Subroutines",
}
@InProceedings{Geiring:1994:GAR,
author = "E. W. Geiring and T. Baker",
title = "The {GNU Ada Runtime Library} ({GNARL})",
crossref = "ACM:1994:AAA",
pages = "97--107",
year = "1994",
bibdate = "Tue Oct 29 19:42:28 MST 1996",
acknowledgement = ack-nhfb,
searchkey = "ti:gawk or gnu",
}
@Article{Granlund:1994:DII,
author = "Torbj{\"o}rn Granlund and Peter L. Montgomery",
title = "Division by invariant integers using multiplication",
journal = j-SIGPLAN,
volume = "29",
number = "6",
pages = "61--72",
month = jun,
year = "1994",
CODEN = "SINODQ",
ISBN = "0-89791-598-4",
ISBN-13 = "978-0-89791-598-4",
ISSN = "0362-1340",
bibdate = "Sun Dec 14 09:16:51 MST 2003",
bibsource = "http://portal.acm.org/;
http://www.acm.org/pubs/contents/proceedings/pldi/178243/index.html",
URL = "http://www.acm.org:80/pubs/citations/proceedings/pldi/178243/p61-granlund/;
ftp://ftp.cwi.nl/pub/pmontgom/divcnst.psa4.gz;
ftp://ftp.cwi.nl/pub/pmontgom/divcnst.psl.gz",
abstract = "Integer division remains expensive on today's
processors as the cost of integer multiplication
declines. We present code sequences for division by
arbitrary nonzero integer constants and run-time
invariants using integer multiplication. The algorithms
assume a two's complement architecture. Most also
require that the upper half of an integer product be
quickly accessible. We treat unsigned division, signed
division where the quotient rounds towards zero, signed
division where the quotient rounds towards {\em
-[infinity]\/}, and division where the result is known
a priori to be exact. We give some implementation
results using the C compiler GCC.",
acknowledgement = ack-nhfb,
affiliation = "Cygnus Support, Mountain View, CA, USA",
annote = "Published as part of the Proceedings of PLDI'94.",
classification = "C5230 (Digital arithmetic methods); C6110 (Systems
analysis and programming); C6150C (Compilers,
interpreters and other processors)",
confdate = "20-24 June 1994",
conflocation = "Orlando, FL, USA; 20-24 June 1994",
confsponsor = "ACM",
conftitle = "ACM SIGPLAN '94 Conference on Programming Language
Design and Implementation (PLDI)",
corpsource = "Cygnus Support, Mountain View, CA, USA",
keywords = "algorithms; performance; Arbitrary nonzero integer
constants; arbitrary nonzero integer constants; C
compiler; Code sequences; code sequences; digital
arithmetic; Floating point arithmetic; floating point
arithmetic; GCC; Integer division; integer division;
Integer multiplication; integer multiplication;
Invariant integers; invariant integers; mathematics
computing; Multiplication; multiplication; program;
program compilers; programming; reduced instruction set
computing; RISC processors; Run-time invariants;
run-time invariants; Signed division; signed division;
Two's complement architecture; two's complement
architecture; Unsigned division; unsigned division",
sponsororg = "ACM",
subject = "{\bf G.1.0} Mathematics of Computing, NUMERICAL
ANALYSIS, General, Computer arithmetic. {\bf F.2.1}
Theory of Computation, ANALYSIS OF ALGORITHMS AND
PROBLEM COMPLEXITY, Numerical Algorithms and Problems.
{\bf D.3.4} Software, PROGRAMMING LANGUAGES,
Processors, Compilers.",
thesaurus = "Digital arithmetic; Mathematics computing; Program
compilers; Programming; Reduced instruction set
computing",
treatment = "T Theoretical or Mathematical",
}
@Book{Hahn:1994:UU,
author = "Harley Hahn",
title = "{UNIX} unbound",
publisher = pub-OSBORNE-MCGRAW-HILL,
address = pub-OSBORNE-MCGRAW-HILL:adr,
pages = "xxxi + 792",
year = "1994",
ISBN = "0-07-882050-2 (paperback)",
ISBN-13 = "978-0-07-882050-2 (paperback)",
LCCN = "QA76.76.O63 H343 1994",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
annote = "At head of title: Open computing. Introduction to UNIX
--- What is UNIX? --- The UNIX connection --- Starting
to use UNIX --- Starting with X window --- Using the
keyboard with UNIX --- Programs to use right away
(including games) --- The online UNIX manual ---
Command syntax --- The shell --- Using the C-shell ---
Using the Korn shell --- Communicating with other
people --- Netwrks and addresses --- Mail ---
Redirection and pipes --- Filters --- Displaying files
--- Printing files --- The vi editor --- The emacs
editor --- The UNIX file system --- Working with
directories --- Working with files --- Processes and
job control --- Summary of UNIX commands covered in
this book --- Summary of UNIX commands by category ---
Summary of vi commands --- Summary of emacs commands
--- The ASCII code --- List of Internet top-level
domains --- Glossary.",
keywords = "UNIX (Computer file) --- Handbooks, manuals, etc.;
Operating systems (Computers) --- Handbooks, manuals,
etc.; Internet (Computer network) --- Handbooks,
manuals, etc.",
}
@InProceedings{Harlander:1994:CSA,
author = "Magnus Harlander",
title = "Central System Administration in a Heterogeneous
{Unix} Environment: {GeNUAdmin}",
crossref = "USENIX:1994:PES",
pages = "1--8",
day = "19--23",
month = sep,
year = "1994",
bibdate = "Fri Oct 18 07:24:24 MDT 1996",
bibsource = "ftp://ftp.uu.net/library/bibliography,
http://www.usenix.org/",
acknowledgement = ack-nhfb,
affiliation = "GeNUA mbH, Muenchen, Germany",
}
@InProceedings{Johnson:1994:SMC,
author = "J. H. Johnson",
title = "Substring matching for clone detection and change
tracking",
crossref = "Muller:1994:ICS",
pages = "120--126",
month = "",
year = "1994",
bibdate = "Wed Oct 30 05:56:55 MST 1996",
abstract = "Legacy systems pose problems to maintainers that can
be solved partially with effective tools. A prototype
tool for determining collections of files sharing a
large amount of text has been developed and applied to
a 40 megabyte source tree containing two releases of
the gcc compiler. Similarities in source code and
documentation corresponding to software cloning,
movement and inertia between releases, as well as the
effects of preprocessing easily stand out in a way that
immediately conveys nonobvious structural information
to a maintainer taking responsibility for such a
system.",
acknowledgement = ack-nhfb,
affiliation = "Software Eng. Lab., Nat. Res. Council of Canada,
Ottawa, Ont., Canada",
classification = "C6150G (Diagnostic, testing, debugging and
evaluating systems); C6150C (Compilers, interpreters
and other processors); C6110B (Software engineering
techniques); C6115 (Programming support)",
keywords = "Clone detection; Change tracking; Legacy systems;
Prototype tool; Source tree; Gcc compiler; Source code;
Documentation; Software cloning; Structural
information; Reverse engineering; Design recovery;
Program understanding",
thesaurus = "Configuration management; Program compilers; Program
diagnostics; Software maintenance; Software tools",
}
@InProceedings{Johnson:1994:VTR,
author = "J. H. Johnson",
title = "Visualizing textual redundancy in legacy source",
crossref = "Botsford:1994:PCI",
pages = "9--18",
month = "",
year = "1994",
bibdate = "Wed Oct 30 05:42:27 MST 1996",
abstract = "As a result of maintenance activity, legacy systems
contain repeated text in the form of large and small
blocks that appear in more or less the same form in
several places. These repetitions define a structure
that can contribute information about the development
history of the source different from the documented
version or the current directory structure. A strategy
based on fingerprinting is used to obtain raw matches
indicating where repetitions occur. The information
inherent in these matches is then reorganized for
easier processing, leading to a natural clustering of
substrings. Suppression of detail is usually necessary
to make further progress and can be done in several
different ways. For example, matches of blocks of text
identify associations within groups of files. In cases
with complex clusters of files involving multiple
overlapping subsets of files, Hasse diagrams can
support visualization. Techniques useful for
understanding such graphs can then be employed to
provide significant insights into the structure of the
redundancy and hence the source. The paper discusses
this approach and shows results obtained from an
example of reasonable size (40 MBytes of source based
on two releases of the GNU gcc compiler).",
acknowledgement = ack-nhfb,
affiliation = "Inst. for Inf. Technol., Nat. Res. Council of Canada,
Ottawa, Ont., Canada",
classification = "C6110B (Software engineering techniques); C6130B
(Graphics techniques); C6130D (Document processing
techniques); C6120 (File organisation)",
keywords = "Textual redundancy visualization; Legacy systems;
Software maintenance activity; Repeated text; Text
blocks; Software development history; Documented
version; Directory structure; Fingerprinting; Raw
matches; Information reorganization; Substring
clustering; Detail suppression; File groups; Complex
file clusters; Multiple overlapping subsets; Hasse
diagrams; Graph understanding; GNU gcc compiler; 40
MByte",
numericalindex = "Memory size 4.2E+07 Byte",
thesaurus = "Data visualisation; File organisation; Redundancy;
Software maintenance; String matching; System
documentation; Text editing",
}
@InProceedings{Kakeshita:1994:FCS,
author = "T. Kakeshita and M. Oda and Y. Imamura",
title = "Fall-in {C}: a software tool for pitfall detection in
{C} programs",
crossref = "IEEE:1994:FAS",
pages = "256--265",
month = "",
year = "1994",
bibdate = "Wed Oct 30 05:47:28 MST 1996",
abstract = "Programming language C has a flexible structure, and
its compiler generates compact and efficient object
codes. However slight bugs (pitfall) which cannot be
detected by the compiler may cause a serious error in C
programs. We are developing a software tool Fall-in C
to detect such pitfalls. The paper demonstrates the
basic features of Fall-in C. In order to enable a
programmer to correct the detected pitfalls
immediately, Fall-in C is executed within GNU Emacs
editor. Pitfalls in C programs are mainly ad hoc. Thus
we prepare three pitfall detection methods for the
extensibility of Fall-in C: regular expression
searching, structural pattern matching and message
analysis of external programs. The patterns for the
first two methods can be easily added to Fall-in C.
Furthermore the message analysis method can be used to
integrate several C program checkers such as lint,
check and cchk into Fall-in C.",
acknowledgement = ack-nhfb,
affiliation = "Dept. of Inf. Sci., Saga Univ., Japan",
classification = "C6115 (Programming support); C6110B (Software
engineering techniques); C6150G (Diagnostic, testing,
debugging and evaluating systems); C6140D (High level
languages)",
keywords = "Fall-in C; Software tool; Pitfall detection; C
programs; Programming language C; Compiler; Efficient
object codes; GNU Emacs editor; Detection methods;
Extensibility; Regular expression searching; Structural
pattern matching; Message analysis; External programs;
C program checkers",
thesaurus = "C language; Program testing; Software fault tolerance;
Software tools",
}
@Article{Kawaguti:1994:CUI,
author = "Minato Kawaguti and Norio Kitajima",
title = "Concurrent use of interactive {\TeX} previewer with an
{Emacs-type} Editor",
journal = j-TUGboat,
volume = "15",
number = "3",
pages = "293--300",
month = sep,
year = "1994",
ISSN = "0896-3207",
}
@InProceedings{Kitani:1994:MID,
author = "T. Kitani",
title = "Merging information by discourse processing for
information extraction",
crossref = "IEEE:1994:PTC",
pages = "412--418",
month = "",
year = "1994",
bibdate = "Wed Oct 30 05:56:55 MST 1996",
abstract = "In information extraction tasks, a finite-state
pattern matcher is widely used to identify individual
pieces of information in a sentence. Merging related
pieces of information scattered throughout a text is
usually difficult, however, since semantic relations
across sentences cannot be captured by the sentence
level processing. The purpose of the discourse
processing described in this paper is to link
individual pieces of information identified by the
sentence level processing. In the Tipster information
extraction domains, correct identification of company
names is the key to achieving a high level of system
performance. Therefore, the discourse processor in the
Textract information extraction system keeps track of
missing, abbreviated, and referenced company names in
order to correlate individual pieces of information
throughout the text. Furthermore, the discourse is
segmented, so that data can be extracted from relevant
portions of the text containing information of interest
related to a particular tie-up relationship.",
acknowledgement = ack-nhfb,
affiliation = "Center for Machine Translation, Carnegie Mellon Univ.,
Pittsburgh, PA, USA",
classification = "C7240 (Information analysis and indexing); C6130
(Data handling techniques); C6180N (Natural language
processing); C7250 (Information storage and retrieval);
C7100 (Business and administration)",
keywords = "Information merging; Discourse processing; Information
extraction; Finite-state pattern matcher; Tipster;
Semantic relations; Sentence level processing; Company
name identification; System performance; Textract;
Missing names; Abbreviated names; Referenced names;
Segmented discourse; Tie-up relationship; Information
correlation; Natural language processing; Finance;
Newspaper articles; Japanese GNU AWK; Majesty; Japanese
morphological analyzer",
thesaurus = "Commerce; Information analysis; Information retrieval;
Merging; Natural languages",
}
@InProceedings{Kozuch:1994:CES,
author = "M. Kozuch and A. Wolfe",
title = "Compression of embedded system programs",
crossref = "IEEE:1994:PII",
pages = "270--277",
month = "",
year = "1994",
bibdate = "Wed Oct 30 05:56:55 MST 1996",
abstract = "Embedded systems are often sensitive to space, weight,
and cost considerations. Reducing the size of stored
programs can significantly improve these factors. This
paper discusses a program compression methodology based
on existing processor architectures. The authors
examine practical and theoretical measures for the
maximum compression rate of a suite of programs across
six modern architectures. The theoretical compression
rate is reported in terms of the zeroth and first-order
entropies, while the practical compression rate is
reported in terms of the Huffman-encoded format of the
proposed compression methodology and the GNU file
compression utility, gzip. These experiments indicate
that a practical increase of 15\%--30\% and a
theoretical increase of over 100\% in code density can
be expected using the techniques examined. In addition,
a novel, greedy, variable-length-to variable-length
encoding algorithm is presented with preliminary
results.",
acknowledgement = ack-nhfb,
affiliation = "Princeton Univ., NJ, USA",
classification = "C6130 (Data handling techniques); C6110 (Systems
analysis and programming)",
keywords = "Embedded system program compression; Space; Weight;
Cost; Stored program size; Program compression
methodology; Processor architectures; Maximum
compression rate; Theoretical compression rate;
Huffman-encoded format; GNU file compression utility;
Gzip; Code density",
thesaurus = "Data compression; Encoding; Huffman codes;
Programming; Real-time systems",
}
@Article{Leary:1994:NCD,
author = "K. Leary",
title = "Numerical {C} and {DSP}",
journal = j-DDJ,
volume = "19",
number = "8",
pages = "18--24, 90",
month = aug,
year = "1994",
CODEN = "DDJSDM",
ISSN = "1044-789X",
bibdate = "Wed Oct 30 05:56:55 MST 1996",
abstract = "Digital-signal processors have traditionally been
difficult to program in high-level languages such as C.
Numerical C, a new high-level language built on the
Free Software Foundation's GNU C compiler (gcc), makes
it easier to program DSP applications and related
mathematical algorithms. It is easy to use, and it also
makes it easier to produce better code for the target.
Numerical C is a superset of ANSI-standard C. It
differs from Standard C in that the additional language
constructs are geared to mathematical-programming
paradigms. These constructs enable the compiler to
generate more-efficient code by giving the compiler
more information about the algorithm and by enforcing a
canonical form on the input program. The most important
extensions that have been added to gcc include
operators, data types, and iterators. This article
focuses on complex numbers and iterators using Analog
Devices' implementation of Numerical C for the
ADSP-21060 SHARC DSP as an example.",
acknowledgement = ack-nhfb,
classification = "C6140D (High level languages); C5230 (Digital
arithmetic methods); C5260 (Digital signal processing);
C6150C (Compilers, interpreters and other processors)",
keywords = "DSP; High-level languages; GNU C compiler;
ANSI-standard C; Mathematical-programming paradigms;
Compiler; Data types; Complex numbers; Iterators;
ADSP-21060 SHARC DSP",
pubcountry = "USA",
thesaurus = "C language; C listings; Digital arithmetic; Program
compilers; Signal processing",
}
@Book{Lewis:1994:GEL,
author = "Bil Lewis and Daniel LaLiberte and {GNU Manual
Group}",
title = "The {GNU Emacs Lisp} reference manual",
publisher = pub-FSF,
address = pub-FSF:adr,
edition = "2.3",
pages = "",
month = jun,
year = "1994",
ISBN = "1-882114-40-X",
ISBN-13 = "978-1-882114-40-5",
LCCN = "????",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
acknowledgement = ack-nhfb,
annote = "GNU Emacs Version 19.25 for UNIX users",
keywords = "Emac Lisp (Computer program language); Programming
languages (Electronic computers)",
}
@Article{Li:1994:CFC,
author = "Chung-Chi Jim Li and E. M. Stewart and W. K. Fuchs",
title = "Compiler-assisted full checkpointing",
journal = j-SPE,
volume = "24",
number = "10",
pages = "871--886",
month = oct,
year = "1994",
CODEN = "SPEXBL",
ISSN = "0038-0644",
bibdate = "Wed Oct 30 05:56:55 MST 1996",
abstract = "The paper describes a compiler-based approach to
checkpointing for process recovery. The implementation
is transparent to both the programmer and the hardware.
The compiler-generated sparse potential checkpoint code
maintains the desired checkpoint interval. Adaptive
checkpointing reduces the size of the checkpoints.
Training is used to select low-cost, high-coverage
potential checkpoints. The problem of selecting
potential checkpoints is shown to be NP-complete, and a
heuristic algorithm is introduced that determines a
quick suboptimal solution. These compiler-assisted
checkpointing techniques have been implemented in a
modified version of the GNU C (GCC) compiler.
Experiments involving the modified version of the GCC
compiler on a Sun SPARC workstation are summarized.",
acknowledgement = ack-nhfb,
affiliation = "Symbol Technol. Inc., Bohemia, NY, USA",
classification = "C6150C (Compilers, interpreters and other
processors); C6150G (Diagnostic, testing, debugging and
evaluating systems); C4240 (Programming and algorithm
theory)",
keywords = "Adaptive checkpointing; Compiler-based approach;
Process recovery; Compiler-generated sparse potential
checkpoint code; Checkpoint interval; High-coverage
potential checkpoints; NP-complete; Heuristic
algorithm; Quick suboptimal solution; GNU C; GCC; Sun
SPARC workstation",
pubcountry = "UK",
thesaurus = "Computational complexity; Fault tolerant computing;
Program compilers; System recovery",
}
@Article{Maruyama:1994:COL,
author = "K. Maruyama and N. Raguideau",
title = "Concurrent object-oriented language '{COOL}'",
journal = j-SIGPLAN,
volume = "29",
number = "9",
pages = "105--114",
month = sep,
year = "1994",
CODEN = "SINODQ",
ISSN = "0362-1340",
bibdate = "Wed Oct 30 05:56:55 MST 1996",
abstract = "COOL is a distributed concurrent object-oriented
language. It includes active objects and passive
objects, and has advanced multiprocessing capability
and efficiency for realtime applications. The global
object ID allows network-transparent message passing
and distributed processing. It is a strongly typed
language with a rich set of data types for system
programming. This language allows runtime efficiency,
program readability and compile-time checking. Module
constructs help large system implementations. COOL
design is largely influenced by Pascal, Modula-2,
Oberon and Chill. C and C++ are also referenced for
linking with their programs. A compiler has been
implemented by rewriting the front-end of the gcc
compiler.",
acknowledgement = ack-nhfb,
affiliation = "NTT Commun. Switching Lab., Tokyo, Japan",
classification = "C6140D (High level languages); C6110J
(Object-oriented programming); C6110P (Parallel
programming); C6150C (Compilers, interpreters and other
processors)",
keywords = "COOL; Distributed concurrent object-oriented language;
Active objects; Passive objects; Multiprocessing;
Realtime applications; Network-transparent message
passing; Distributed processing; Strongly typed
language; Data types; System programming; Runtime
efficiency; Program readability; Compile-time checking;
Pascal; Modula-2; Oberon; Chill; C; C++; Compiler; Gcc
compiler",
pubcountry = "USA",
thesaurus = "Message passing; Object-oriented languages;
Object-oriented programming; Parallel languages;
Parallel programming; Program compilers",
}
@Article{Maskit:1994:MPS,
author = "D. Maskit and S. Taylor",
title = "A message-driven programming system for fine-grain
multicomputers",
journal = j-SPE,
volume = "24",
number = "10",
pages = "953--980",
month = oct,
year = "1994",
CODEN = "SPEXBL",
ISSN = "0038-0644",
bibdate = "Wed Oct 30 05:56:55 MST 1996",
abstract = "The paper describes an experimental message-driven
programming system for fine-grain multicomputers. The
initial target architecture is the J-machine designed
at MIT. This machine combines a unique collection of
architectural features that include fine-grain
processes, on-chip associative memory; and hardware
support for process synchronization. The programming
system uses these mechanisms via a simple
message-driven process model that blurs the distinction
between processes and messages: messages correspond to
processes that are executed elsewhere in the network.
This model allows code and data to be distributed
across the computers in the machine, and is supported
at every stage of the program development cycle. The
prototype system we have developed includes a basic set
of programming tools to support the model; these
include a compiler, linker, archiver, loader and
microkernel. Although the concepts are language
independent, our prototype system is based on GNU-C.",
acknowledgement = ack-nhfb,
affiliation = "Scalable Concurrent Programming Lab., California Inst.
of Technol., Pasadena, CA, USA",
classification = "C5440 (Multiprocessing systems); C6110P (Parallel
programming); C5220P (Parallel architecture); C6150C
(Compilers, interpreters and other processors); C6150N
(Distributed systems software)",
keywords = "Message passing; Experimental message-driven
programming system; Fine-grain multicomputers;
J-machine; Fine-grain processes; On-chip associative
memory; Hardware support; Process synchronization;
Program development cycle; Programming tools; Compiler;
Linker; Archiver; Loader; Microkernel; GNU-C",
pubcountry = "UK",
thesaurus = "Message passing; Multiprocessing systems; Parallel
architectures; Parallel programming; Program
processors; Synchronisation",
}
@InProceedings{Mittag:1994:UGC,
author = "L. Mittag",
title = "Using {GNU C} for Cross-Development",
crossref = "Anonymous:1994:PSA",
pages = "45--50",
year = "1994",
bibdate = "Tue Oct 29 19:42:28 MST 1996",
acknowledgement = ack-nhfb,
searchkey = "ti:gawk or gnu",
}
@InProceedings{Muller:1994:OSR,
author = "G. Muller and M. Hue and N. Peyrouze",
title = "Operating system: results of the {FTM} experiment",
crossref = "Echtle:1994:DCE",
pages = "491--508",
month = "",
year = "1994",
bibdate = "Wed Oct 30 05:47:28 MST 1996",
abstract = "This paper presents an evaluation of the performance
of a consistent checkpointing mechanism that has been
integrated into a modular Mach microkernel based
operating system. We have measured the performance
overhead of checkpointing for several
workstation-typical applications: number crunching and
office tools. This has been done using specific servers
which were added to a standard Mach 3.0/BSD system.
Measurements are performed for failure-free executions
by varying the number of checkpoints and thus the
amount of computation lost in the event of a crash. Our
initial results showed a time overhead of about 3\% for
up to 20\% work lost in the event of a crash, while we
get an overhead between 16\% and 23\% for up to 1\%
computation lost. Also, when porting interactive office
tools such as the micro-emacs text editor, we get a
maximal checkpoint duration of 1.4 second on our
prototype machine that is as powerful as a Sun 3/60.
Based on these results, we argue that checkpointing can
be integrated into a modular micro-kernel based
operating system without degradation of the system
performances.",
acknowledgement = ack-nhfb,
affiliation = "INRIA, IRISA, Rennes, France",
classification = "C6150J (Operating systems); C5470 (Performance
evaluation and testing)",
keywords = "Operating system; Consistent checkpointing mechanism;
Modular Mach microkernel based operating system;
Performance overhead; Workstation-typical applications;
Number crunching; Office tools; Mach 3.0/BSD system;
Interactive office tools; Micro-emacs text editor;
Maximal checkpoint; Sun 3/60; System performances",
thesaurus = "Fault tolerant computing; Operating system kernels;
Performance evaluation; Software performance
evaluation",
}
@Article{Murdock:1994:ODG,
author = "Ian Murdock",
title = "Overview of the {Debian GNU\slash Linux} System",
journal = j-LINUX-J,
volume = "6",
pages = "??--??",
month = oct,
year = "1994",
CODEN = "LIJOFX",
ISSN = "1075-3583",
bibdate = "Fri Oct 9 08:35:26 MDT 1998",
bibsource = "http://noframes.linuxjournal.com/lj-issues/issue6/index.html",
URL = "http://noframes.linuxjournal.com/lj-issues/issue6/debian.html",
acknowledgement = ack-nhfb,
}
@Article{Oda:1994:PDC,
author = "M. Oda and T. Kakeshita",
title = "Pitfall detection of {C} programs using pattern
matching",
journal = j-TRANS-INFO-PROCESSING-SOC-JAPAN,
volume = "35",
number = "11",
pages = "2427--2436",
month = nov,
year = "1994",
CODEN = "JSGRD5",
ISSN = "0387-5806",
bibdate = "Wed Oct 30 05:47:28 MST 1996",
abstract = "The programming language C has a flexible structure
and its compiler generates compact and efficient object
codes. However the compiler cannot detect some types of
bugs hidden in the program. We are developing a
software tool Fall-in C to detect such types of bugs,
or pitfalls, in C programs. In contrast with lint,
Fall-in C is executed within GNU Emacs editor in order
to enable a programmer to correct the detected pitfalls
immediately. Furthermore Fall-in C uses pattern
matching for pitfall detection so that programmers can
augment the detectable pitfall types by adding the
corresponding patterns. Fall-in C uses both regular
expression searching and structural pattern matching in
order to detect pitfalls in C programs. A regular
expression can efficiently detect lexical pitfalls
while it detects erroneous pitfalls during syntactic
pitfall detection. Although structural pattern matching
requires syntactic analysis and thus cannot detect
certain types of lexical pitfalls, it can properly
detect syntactic pitfalls. We evaluated the tool using
180 C source files (2.9 MB total) and demonstrated that
Fall-in C correctly detects 16 types of pitfalls.",
acknowledgement = ack-nhfb,
affiliation = "Dept. of Inf. Sci. and Electron. Eng., Kurume Inst. of
Technol., Japan",
classification = "C6150G (Diagnostic, testing, debugging and
evaluating systems); C6140D (High level languages);
C6115 (Programming support); C4210L (Formal languages
and computational linguistics); C1250 (Pattern
recognition)",
keywords = "Pitfall detection; C programs; C programming language;
Compiler; Object codes; Software tool; Fall-in C; GNU
Emacs editor; Pitfall types; Regular expression
searching; Lexical pitfalls; Syntactic pitfall
detection; Structural pattern matching; Syntactic
pitfalls",
language = "Japanese",
pubcountry = "Japan",
thesaurus = "C language; Computational linguistics; Pattern
matching; Program debugging; Software tools",
}
@InProceedings{Ohtani:1994:ETG,
author = "T. Ohtani and H. Sawamura and T. Minami",
title = "{EUODHILOS-II} on top of {GNU Epoch}",
crossref = "Bundy:1994:ADC",
pages = "816--820",
month = "",
year = "1994",
bibdate = "Wed Oct 30 05:47:28 MST 1996",
abstract = "EUODHILOS-II is implemented on the GNU Epoch editor in
the Emacs Lisp language. GNU Emacs produced by the GNU
project is familiar to many users as a text editor,
which exceeds in the ease to extend. Moreover it has
the various functions for such text processing as
syntactic analysis and searching with regular
expressions. Epoch is an extension of GNU Emacs for the
X Window System, which can manipulate multiple windows.
Operations are keyboard-oriented and the usual editing
commands are available in the comment, syntax
definition and side condition editors. Users can
customize EUODHILOS-II as they wish. The size of the
source code of EUODHILOS-II is about 300K bytes.",
acknowledgement = ack-nhfb,
affiliation = "Inst. for Social Inf. Sci., Fujitsu Labs. Ltd.,
Shizuoka, Japan",
classification = "C6170K (Knowledge engineering techniques); C6110L
(Logic programming); C4210L (Formal languages and
computational linguistics)",
keywords = "EUODHILOS-II; GNU Epoch editor; Emacs Lisp language;
Text editor; Text processing; Syntactic analysis; X
Window System; Syntax definition; Side condition
editors",
thesaurus = "Context-free grammars; Inference mechanisms; Logic
programming; Theorem proving",
}
@Article{Ramey:1994:BGS,
author = "Chet Ramey",
title = "{Bash} --- The {GNU} shell",
journal = j-LOGIN,
volume = "19",
number = "6",
pages = "25--33",
month = dec,
year = "1994",
CODEN = "LOGNEM",
ISSN = "1044-6397",
bibdate = "Thu Feb 22 08:12:14 MST 1996",
bibsource = "http://www.usenix.org/,
ftp://ftp.uu.net/library/bibliography",
acknowledgement = ack-nhfb,
}
@Article{Ramey:1994:WGBa,
author = "Chet Ramey",
title = "What's {GNU}: {\tt bash} --- The {GNU} Shell, part 1
of 2",
journal = j-LINUX-J,
volume = "3",
pages = "??--??",
month = jul,
year = "1994",
CODEN = "LIJOFX",
ISSN = "1075-3583",
bibdate = "Fri Oct 9 08:35:26 MDT 1998",
bibsource = "http://noframes.linuxjournal.com/lj-issues/issue3/index.html",
acknowledgement = ack-nhfb,
}
@Article{Ramey:1994:WGBb,
author = "Chet Ramey",
title = "What's {GNU} --- {\tt bash} --- The {GNU} Shell (part
2 of 2)",
journal = j-LINUX-J,
volume = "4",
pages = "??--??",
month = aug,
year = "1994",
CODEN = "LIJOFX",
ISSN = "1075-3583",
bibdate = "Fri Oct 9 08:35:26 MDT 1998",
bibsource = "http://noframes.linuxjournal.com/lj-issues/issue4/index.html",
acknowledgement = ack-nhfb,
}
@InProceedings{Raportirenko:1994:GPS,
author = "A. M. Raportirenko",
title = "{GSL}: a portable standard {Lisp} interpreter",
crossref = "Becks:1994:NCT",
pages = "645--650",
month = "",
year = "1994",
bibdate = "Tue Dec 29 08:26:48 1998",
abstract = "This paper describes the first release of the GNU
Standard Lisp interpreter (GSL). This dialect of LISP
language has been created as a part of the large
computer algebra system REDUCE. The interpreter allows
dynamically load compiled LISP programs and programs
written in other high level languages (such as C,
FORTRAN etc.). It is very useful to mix the numeric and
symbolic calculations. GSL is free software. The
interpreter is written in C and uses some GNU library
packages.",
acknowledgement = ack-nhfb,
affiliation = "Lab. of Comput. Tech. and Autom., JINR, Dubna,
Russia",
classification = "C6150C (Compilers, interpreters and other
processors); C6140D (High level languages); C7310
(Mathematics computing); C6110B (Software engineering
techniques)",
keywords = "GNU Standard Lisp interpreter; GSL; REDUCE; C
language; Computer algebra; LISP language; Computer
algebra system; High level languages; C; FORTRAN;
Symbolic calculation; Numeric calculation; GNU library
packages",
thesaurus = "LISP; Mathematics computing; Program interpreters;
Software portability; Symbol manipulation",
}
@Article{Robbins:1994:WGGa,
author = "Arnold Robbins",
title = "What's {GNU}?: {GNU}'s Not {Unix}!",
journal = j-LINUX-J,
volume = "1",
pages = "??--??",
month = mar,
year = "1994",
CODEN = "LIJOFX",
ISSN = "1075-3583",
bibdate = "Fri Oct 9 08:35:26 MDT 1998",
bibsource = "http://noframes.linuxjournal.com/lj-issues/issue1/index.html",
URL = "http://noframes.linuxjournal.com/lj-issues/issue1/whatsgnu.html",
acknowledgement = ack-nhfb,
}
@Article{Robbins:1994:WGGb,
author = "Arnold Robbins",
title = "What's {GNU}: {\tt groff}",
journal = j-LINUX-J,
volume = "7",
pages = "??--??",
month = nov,
year = "1994",
CODEN = "LIJOFX",
ISSN = "1075-3583",
bibdate = "Fri Oct 9 08:35:26 MDT 1998",
bibsource = "http://noframes.linuxjournal.com/lj-issues/issue7/index.html",
URL = "http://noframes.linuxjournal.com/lj-issues/issue7/whatsgnu.7.html",
acknowledgement = ack-nhfb,
}
@Article{Robbins:1994:WGS,
author = "Arnold Robbins",
title = "What's {GNU}?: Software Tools",
journal = j-LINUX-J,
volume = "2",
pages = "??--??",
month = apr # "\slash " # may,
year = "1994",
CODEN = "LIJOFX",
ISSN = "1075-3583",
bibdate = "Fri Oct 9 08:35:26 MDT 1998",
bibsource = "http://noframes.linuxjournal.com/lj-issues/issue2/index.html",
URL = "http://noframes.linuxjournal.com/lj-issues/issue2/gnu2.html",
acknowledgement = ack-nhfb,
}
@Article{Robbins:1994:WGT,
author = "Arnold Robbins",
title = "What's {GNU}: {Texinfo}",
journal = j-LINUX-J,
volume = "6",
pages = "??--??",
month = oct,
year = "1994",
CODEN = "LIJOFX",
ISSN = "1075-3583",
bibdate = "Fri Oct 9 08:35:26 MDT 1998",
bibsource = "http://noframes.linuxjournal.com/lj-issues/issue6/index.html",
URL = "http://noframes.linuxjournal.com/lj-issues/issue6/texinfo.html",
acknowledgement = ack-nhfb,
}
@Book{Stallman:1994:GEM,
author = "Richard Stallman",
title = "{GNU Emacs} manual",
publisher = pub-FSF,
address = pub-FSF:adr,
edition = "10th, {Emacs} version 19.26",
pages = "xiv + 442",
month = jul,
year = "1994",
ISBN = "1-882114-04-3",
ISBN-13 = "978-1-882114-04-7",
LCCN = "????",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
note = "Includes GNU Emacs reference card.",
acknowledgement = ack-nhfb,
keywords = "GNU Emacs.; Text editors (Computer programs); Computer
software --- Development.",
}
@Book{Strobel:1994:LUJ,
author = "Stefan Strobel",
title = "{LINUX: Unix f{\"u}r jedermann; der PC als
Workstation; Installation Schritt f{\"u}r Schritt,
Unix-Grundlagen und TCP/IP, Editieren mit dem Emacs,
DOS-Programme unter LINUX, Textverarbeitung mit LaTeX
2e, Sound, Grafik, Netzwerkspiele}",
publisher = pub-VOGEL,
address = pub-VOGEL:adr,
pages = "100",
year = "1994",
ISBN = "3-8259-1330-9",
ISBN-13 = "978-3-8259-1330-4",
LCCN = "????",
bibdate = "Tue Jul 07 17:30:38 1998",
price = "49.00 DM; 358.00 {\"O}S; 49.00 Sfr",
acknowledgement = ack-nhfb,
}
@Article{Waters:1994:CPE,
author = "R. C. Waters",
title = "Cliche-based program editors",
journal = j-TOPLAS,
volume = "16",
number = "1",
pages = "102--150",
month = jan,
year = "1994",
CODEN = "ATPSDT",
ISSN = "0164-0925",
bibdate = "Wed Oct 30 05:56:55 MST 1996",
abstract = "A cliche-based program editor supports the
construction and modification of programs in terms of
standard algorithmic fragments (cliches), instead of
merely in terms of syntactic or textual units. Three
experimental cliche-based program editors have been
implemented, exploring the tradeoff between power and
speed. (1) The Knowledge-Based Editor in Emacs
(KBEmacs) supports a wide range of editing operations
and can represent a wide range of cliches, because it
uses an internal representation called plan diagrams,
which combines features of flowcharts and data flow
schemas. Unfortunately, the need to convert back and
forth between program text and plan diagrams causes
KBEmacs to be quite slow. (2) The Tempest editor uses
text as its internal representation and is very fast
since it does not have to do any conversions. It
supports a number of cliche-based operations and can
represent a variety of cliches. Unfortunately, most
programming cliches are too complex to be supported
directly in terms of program text. (3) The Ace editor
retains much of the speed of Tempest while supporting
much of the power of KBEmacs. Ace is relatively
efficient, because it uses abstract syntax trees as its
internal representation. Ace's approach could be used
to add powerful and efficient cliche-based editing
capabilities to any programming environment. In
particular, Ace demonstrates that a small change in the
internal workings of syntax editors is all that is
required to open the door to cliche-based editing.",
acknowledgement = ack-nhfb,
affiliation = "Mitsubishi Electr. Res. Labs., Cambridge, MA, USA",
classification = "C6115 (Programming support); C6130D (Document
processing techniques); C6170 (Expert systems)",
keywords = "Cliche-based program editors; Program construction;
Program modification; Standard algorithmic fragments;
Knowledge-Based Editor in Emacs; KBEmacs; Internal
representation; Plan diagrams; Flowcharts; Data flow
schemas; Program text; Tempest editor; Text-diagram
conversions; Ace editor; Computational power;
Computational speed; Abstract syntax trees; Programming
environment; Syntax editors; Computer-aided software
engineering; CASE; Software reuse",
pubcountry = "USA",
thesaurus = "Diagrams; Knowledge based systems; Programming;
Programming environments; Software tools; Subroutines;
Text editing; Tree data structures",
}
@Article{Welsh:1994:EFF,
author = "Matt Welsh",
title = "{Emacs}: Friend or Foe",
journal = j-LINUX-J,
volume = "5",
pages = "??--??",
month = sep,
year = "1994",
CODEN = "LIJOFX",
ISSN = "1075-3583",
bibdate = "Fri Oct 9 08:35:26 MDT 1998",
bibsource = "http://noframes.linuxjournal.com/lj-issues/issue5/index.html",
abstract = "Lots of features make Emacs an attractive alternative
to vi. Customizing makes Emacs perform the way you
want.",
acknowledgement = ack-nhfb,
}
@Book{Welsh:1994:LBG,
author = "Matt Welsh and {Yggdrasil Computing Inc}",
title = "The {Linux} bible: the {GNU} testament",
publisher = "Yggdrasil Computing",
address = "San Jose, CA, USA",
edition = "Second expanded",
pages = "1176",
year = "1994",
ISBN = "1-883601-10-X (paperback)",
ISBN-13 = "978-1-883601-10-2 (paperback)",
LCCN = "????",
bibdate = "Sat May 4 18:45:07 MDT 1996",
acknowledgement = ack-nhfb,
annote = "Linux HOWTO coordinator: Matt Welsh. ``Everything you
wanted to know about Linux, a free 32-bit
internet-ready multitasking, multimedia operating
system with complete source code, developed by the free
software community on the Internet.''",
keywords = "Linux; UNIX (Computer file); Microcomputer
workstations; Operating systems (Computers)",
}
@Article{Welsh:1994:TEP,
author = "Matt Welsh",
title = "Tutorial: {Emacs} for Programmers",
journal = j-LINUX-J,
volume = "6",
pages = "??--??",
month = oct,
year = "1994",
CODEN = "LIJOFX",
ISSN = "1075-3583",
bibdate = "Fri Oct 9 08:35:26 MDT 1998",
bibsource = "http://noframes.linuxjournal.com/lj-issues/issue6/index.html",
abstract = "GNU Emacs as a complete development environment.",
acknowledgement = ack-nhfb,
}
@Article{Woehr:1994:GKG,
author = "J. Woehr",
title = "Getting to know {GNU}",
journal = j-EMBED-SYS-PROG,
volume = "7",
number = "2",
pages = "34--35, 37, 39--40",
month = feb,
year = "1994",
CODEN = "EYPRE4",
ISSN = "1040-3272",
bibdate = "Wed Oct 30 05:56:55 MST 1996",
abstract = "We look at the practical aspects of using GNU
software, including the difference between free
software and a free lunch. The free software tool-chain
for has been developed for cross-developing embedded
systems programs for arbitrary targets on arbitrary
hosts. This free software was developed under the aegis
of the Free Software Foundation and is collectively
called GNU, an acronym for 'GNUs Not UNIX.' GNU has
attempted to replace the entire environment and
development tool-chain of UNIX with a restriction-free
alternative, made available to end users as complete
and redistributable source code. GNU software is
typically covered under the GNU Public License or its
variant, the Library GNU Public License (LGPL)-which
essentially restricts users from hiding GNU system
components within proprietary software without
simultaneously redistributing full source for those GNU
components contained therein. This condition usually
does not affect embedded systems developers (except by
making their lives easier by giving them full source
code for the development tools they are using), but in
certain cases, it can have an impact on development,
which we discuss in this article.",
acknowledgement = ack-nhfb,
affiliation = "Cygnus Support, Mountain View, CA, USA",
classification = "C6115 (Programming support); C0230B (Legal aspects);
C6150N (Distributed systems)",
keywords = "GNU software; Free software; Embedded systems; Free
Software Foundation; GNUs Not UNIX; Redistributable
source code; GNU Public License; Library GNU Public
License",
pubcountry = "USA",
thesaurus = "Contracts; Open systems; Public domain software;
Real-time systems; Software tools",
}
@Article{Woehr:1994:WG,
author = "J. Woehr",
title = "What's {GNU}?",
journal = j-EMBED-SYS-PROG,
volume = "7",
number = "1",
pages = "70--72, 74",
month = jan,
year = "1994",
CODEN = "EYPRE4",
ISSN = "1040-3272",
bibdate = "Wed Oct 30 05:56:55 MST 1996",
abstract = "GNU has wandered out of the software wilderness to
become a buzzword on many lips. Formally, GNU is a
self-referential acronym (where the G is pronounced)
signifying 'GNU's Not UNIX.' Practically, it is an
immense corpus of professional quality software, the
greater part of which is of direct application to the
programming of embedded systems. GNU consists of
several millions of lines of source code composed by
hundreds of individuals over the course of about a
decade. All the software in the GNU corpus has been
contributed to the GNU project by its authors, and most
is labelled with the GNU Public License (the GPL),
which states, in short, that you are free to use and
redistribute this free software, provided you offer the
same opportunity to the next person in line by
redistributing the entire package as it was delivered
(with any improvements that might have made on your own
part). All GNU tools are delivered with complete source
code. The GNU toolchain consists, so far, of compilers
(gcc and g++, both native and cross-development) and
the related binary utilities (GNU Id, ar, and so on);
text utilities (GNU sed, gawk, and GNU m4); debuggers
(gdb, both native hosted and cross-development
versions); and many other tools and complete
programs.",
acknowledgement = ack-nhfb,
classification = "C6150J (Operating systems); C6150E (General utility
programs); C6150G (Diagnostic, testing, debugging and
evaluating systems); C6150C (Compilers, interpreters
and other processors)",
keywords = "Free software; GNU's Not UNIX; GNU; GNU Public
License; Toolchain; Compilers; Binary utilities; Text
utilities; Debuggers",
pubcountry = "USA",
thesaurus = "Operating systems [computers]; Program compilers;
Program debugging; Public domain software; Real-time
systems; Software packages",
}
@Periodical{Yggdrasil:1994:YLG,
key = "Yggdrasil-Linux",
title = "{Yggdrasil Linux/GNU/X} operating system",
howpublished = "CD-ROM",
publisher = pub-YGGDRASIL,
address = pub-YGGDRASIL:adr,
year = "1994",
ISSN = "1069-3955",
bibdate = "Thu May 18 09:33:18 1995",
note = "Updated quarterly.",
}
@Article{Alexander:1995:HCX,
author = "P. Alexander and L. F. Gladden",
title = "How to Create an {X}-Window Interface to {Gnuplot} and
{Fortran} Programs Using the {Tcl\slash Tk} Toolkit",
journal = j-COMP-PHYSICS,
volume = "9",
number = "1",
pages = "57--??",
year = "1995",
CODEN = "CPHYE2",
ISSN = "0894-1866",
bibdate = "Sat Jan 27 07:37:25 MST 1996",
acknowledgement = ack-nhfb,
}
@Article{Anonymous:1995:NPG,
author = "Anonymous",
title = "A New Project or a {GNU} Project?",
journal = j-LINUX-J,
volume = "13",
pages = "??--??",
month = may,
year = "1995",
CODEN = "LIJOFX",
ISSN = "1075-3583",
bibdate = "Fri Oct 9 08:35:26 MDT 1998",
bibsource = "http://noframes.linuxjournal.com/lj-issues/issue13/index.html",
URL = "http://noframes.linuxjournal.com/lj-issues/issue13/gnu.html",
acknowledgement = ack-nhfb,
}
@Article{Anonymous:1995:WGG,
author = "Anonymous",
title = "What's {GNU}?: {GNU} Coding Standards",
journal = j-LINUX-J,
volume = "16",
pages = "??--??",
month = aug,
year = "1995",
CODEN = "LIJOFX",
ISSN = "1075-3583",
bibdate = "Fri Oct 9 08:35:26 MDT 1998",
bibsource = "http://noframes.linuxjournal.com/lj-issues/issue16/index.html",
URL = "http://noframes.linuxjournal.com/lj-issues/issue16/gnu16.html",
acknowledgement = ack-nhfb,
}
@Article{Anonymous:1995:WGPa,
author = "Anonymous",
title = "What's {GNU}?: {Plan 9} (part 1 of 2)",
journal = j-LINUX-J,
volume = "11",
pages = "??--??",
month = mar,
year = "1995",
CODEN = "LIJOFX",
ISSN = "1075-3583",
bibdate = "Fri Oct 9 08:35:26 MDT 1998",
bibsource = "http://noframes.linuxjournal.com/lj-issues/issue11/index.html",
URL = "http://noframes.linuxjournal.com/lj-issues/issue11/gnu11.html",
acknowledgement = ack-nhfb,
}
@Article{Anonymous:1995:WGPb,
author = "Anonymous",
title = "What's {GNU}?: {Plan 9} (part 2 of 2)",
journal = j-LINUX-J,
volume = "12",
pages = "??--??",
month = apr,
year = "1995",
CODEN = "LIJOFX",
ISSN = "1075-3583",
bibdate = "Fri Oct 9 08:35:26 MDT 1998",
bibsource = "http://noframes.linuxjournal.com/lj-issues/issue12/index.html",
URL = "http://noframes.linuxjournal.com/lj-issues/issue12/gnu12.html",
acknowledgement = ack-nhfb,
}
@Article{Baker:1995:IAP,
author = "T. P. Baker and E. W. {Giering, III}",
title = "Implementing {Ada 9X} protected objects and
asynchronous transfer of control",
journal = j-INT-J-MINI-MICROCOMPUTERS,
volume = "17",
number = "1",
pages = "26--34",
month = "",
year = "1995",
CODEN = "IJMMDE",
ISSN = "0702-0481",
bibdate = "Wed Oct 30 05:47:28 MST 1996",
abstract = "The revised standard for the Ada programming language,
Ada 9X, extends the Ada tasking model to better support
the use of parallelism in real-time systems. These
extensions to tasking require new implementations. This
paper discusses some of the technical issues and
outlines the design of one implementation, the GNu Ada
Runtime Library. Two features are discussed in detail:
protected objects, which are data objects that are safe
for concurrent access by multiple tasks, and
asynchronous transfer of control, which allows a task
to respond to an asynchronous event by aborting the
current computation and transferring control to a
recovery point within the task.",
acknowledgement = ack-nhfb,
affiliation = "Dept. of Comput. Sci., Florida State Univ.,
Tallahassee, FL, USA",
classification = "C6140D (High level languages); C6150C (Compilers,
interpreters and other processors)",
keywords = "Ada 9X; Protected objects; Asynchronous transfer;
Parallelism; Real-time systems; GNu Ada Runtime
Library; Asynchronous transfer of control",
pubcountry = "USA",
thesaurus = "Ada; Program compilers; Real-time systems",
}
@Article{Baumgartner:1995:SLE,
author = "G. Baumgartner and V. F. Russo",
title = "Signatures: a language extension for improving type
abstraction and subtype polymorphism in {C++}",
journal = j-SPE,
volume = "25",
number = "8",
pages = "863--889",
month = aug,
year = "1995",
CODEN = "SPEXBL",
ISSN = "0038-0644",
bibdate = "Wed Oct 30 05:42:27 MST 1996",
abstract = "C++ uses inheritance as a substitute for subtype
polymorphism. We give examples where this makes the
type system too inflexible. We then describe a
conservative language extension that allows a
programmer to define an abstract type hierarchy
independent of any implementation hierarchies, to
retroactively abstract over an implementation, and to
decouple subtyping from inheritance. This extension
gives the user more of the flexibility of dynamic
typing while retaining the efficiency and security of
static typing. With default implementations and views
flexible mechanisms are provided for implementing an
abstract type by different concrete class types. We
first show how the language extension can be
implemented in a preprocessor to a C++ compiler, and
then detail and analyse the efficiency of an
implementation we directly incorporated in the GNU C++
compiler.",
acknowledgement = ack-nhfb,
affiliation = "Dept. of Comput. Sci., Purdue Univ., West Lafayette,
IN, USA",
classification = "C6140D (High level languages); C6110J
(Object-oriented programming); C6120 (File
organisation); C6150C (Compilers, interpreters and
other processors); C4240 (Programming and algorithm
theory)",
keywords = "C++ language extension; Type abstraction; Subtype
polymorphism; Inheritance; Conservative language
extension; Abstract type hierarchy; Dynamic typing;
Static typing; Default implementations; Flexible
mechanisms; Abstract type; Concrete class types; C++
compiler preprocessor; GNU C++ compiler; Signatures",
pubcountry = "UK",
thesaurus = "Abstract data types; C language; Object-oriented
languages; Object-oriented programming; Program
compilers; Type theory",
}
@TechReport{Burgess:1995:GCE,
author = "Mark Burgess",
title = "The {GNU} configuration engine",
type = "Report",
number = "4",
institution = "H{\o}gskolen i Oslo, Avdeling for
ingeni{\o}rutdanning",
address = "Oslo, Norway",
pages = "16",
year = "1995",
ISBN = "82-579-0104-0",
ISBN-13 = "978-82-579-0104-2",
bibdate = "Wed Oct 30 10:17:12 2002",
acknowledgement = ack-nhfb,
}
@Article{Butt:1995:IFS,
author = "Farooq Butt",
title = "Implementing {FORTRAN77} support in the {GNU} gdb
debugger",
journal = j-SIGPLAN,
volume = "30",
number = "5",
pages = "29--36",
month = may,
year = "1995",
CODEN = "SINODQ",
ISSN = "0362-1340",
bibdate = "Sun Dec 14 09:17:05 MST 2003",
bibsource = "http://portal.acm.org/",
abstract = "Commercially available source-level debuggers in the
UNIX world often shortchange FORTRAN77 users. While C
and C++ are usually well-supported languages, FORTRAN77
has not been given the attention it deserves. Given the
current interest in performance-measurement via the
popular SPEC benchmarks (many of which are coded in
FORTRAN77) as well as the large installed-base of
mathematical/scientific FORTRAN77 software, it is
imperative for system software vendors to provide
FORTRAN77 users with the same sort of fast, effective
and powerful source-level debugging environment that C
and C++ users enjoy. This paper details the addition of
FORTRAN77 features to the GNU gdb(2) debugger in order
to better support users of the highly-optimizing
Motorola PowerPC mf77 compiler. These FORTRAN77
features currently (as of version 4.10) only target the
native PowerPC mf77 compiler distributed by Motorola.",
acknowledgement = ack-nhfb,
affiliation = "Compiler and Tools Group, RISC Software, Austin, TX,
USA",
classification = "C6115 (Programming support); C6150G (Diagnostic,
testing, debugging and evaluating systems); C6140D
(High level languages)",
keywords = "FORTRAN77 support; GNU gdb debugger; Source-level
debuggers; UNIX; Debugging environment",
pubcountry = "USA",
thesaurus = "FORTRAN; Program debugging; Programming environments",
}
@Article{Carlson:1995:DDA,
author = "William W. Carlson and Jesse M. Draper",
title = "Distributed data access in {AC}",
journal = j-SIGPLAN,
volume = "30",
number = "8",
pages = "39--47",
month = aug,
year = "1995",
CODEN = "SINODQ",
ISSN = "0362-1340",
bibdate = "Sun Dec 14 09:17:08 MST 2003",
bibsource = "http://portal.acm.org/",
abstract = "We have modified the C language to support a
programming model based on a shared address space with
physically distributed memory. With this model, called
AC, users can write programs in which the nodes of a
massively parallel processor can access remote memory
without message passing. AC provides support for
distributed arrays as well as pointers to distributed
data. Simple array references and pointer dereferencing
are sufficient to generate low-overhead remote reads
and writes. We have implemented these ideas in a
compiler based on the GNU C compiler and targeted at
Cray Research's T3D. Initial performance measurements
show that AC generates code for remote accesses which
is considerably faster than that of the native compiler
for structures up to about 16 words in size and
virtually equivalent for larger transfers.",
acknowledgement = ack-nhfb,
affiliation = "IDA Supercomput. Res. Center, Bowie, MD, USA",
classification = "C6110P (Parallel programming); C6120 (File
organisation); C6140D (High level languages); C6150C
(Compilers, interpreters and other processors); C6150N
(Distributed systems software)",
keywords = "AC language; Array references; C language; Cray T3D;
Distributed arrays; Distributed data access; GNU C
compiler; Low-overhead remote read/write operations;
Massively parallel processor; Performance measurements;
Physically distributed memory; Pointer dereferencing;
Programming model; Remote memory access; Shared address
space",
thesaurus = "Arrays; C language; Data structures; Distributed
memory systems; Parallel languages; Parallelising
compilers; Shared memory systems",
}
@Book{Chassell:1995:TGD,
author = "Robert J. Chassell and Richard M. Stallman",
title = "Texinfo: The {GNU} Documentation Format (for Texinfo
version 2.20, 28 February 1995)",
publisher = pub-FSF,
address = pub-FSF:adr,
pages = "",
year = "1995",
ISBN = "1-882114-63-9",
ISBN-13 = "978-1-882114-63-4",
LCCN = "????",
bibdate = "Wed Sep 20 10:17:03 2000",
price = "US\$25.00",
acknowledgement = ack-nhfb,
}
@InProceedings{Chen:1995:STP,
author = "Tzer-Shyong Chen and Feipei Lai and Rung-Ji Shang",
title = "A simple tree pattern matching algorithm for code
generator",
crossref = "IEEE:1995:PNA",
pages = "162--167",
month = "",
year = "1995",
bibdate = "Wed Oct 30 05:42:27 MST 1996",
abstract = "This paper describes a simple tree pattern matching
algorithm for the code generator of compilers. The
intermediate code (Register Transfer Language) is
matched with the tree-rewriting rules of the
instruction description which describes the target
architecture to generate the assembly code. The hashing
function is used in our system to transform a tree
pattern matching problem into a simple number
comparison. Compared with GNU C compiler (gcc), the
tree pattern matching time can be reduced by 69\% and
the compiler time by 6\%, and the space of the
instruction descriptions can be reduced by 4.10 times
on DLX and 2.14 on SPARC. The size of table, which is
necessary for the code generator, is quite small in our
method.",
acknowledgement = ack-nhfb,
affiliation = "Dept. of Electr. Eng., Nat. Taiwan Univ., Taipei,
Taiwan",
classification = "C6150C (Compilers, interpreters and other
processors); C4240 (Programming and algorithm theory);
C6120 (File organisation)",
keywords = "Tree pattern matching algorithm; Code generator;
Compiler generator; Register Transfer Language;
Tree-rewriting rules; Instruction description; Assembly
code; Hashing function; GNU C compiler; Tree pattern
matching time; Compiler time; DLX; SPARC",
thesaurus = "Assembly language; Compiler generators; File
organisation; Pattern matching; Tree searching",
}
@Article{Cheng:1995:ECA,
author = "H. H. Cheng",
title = "Extending {C} with arrays of variable length",
journal = j-COMP-STANDARDS-INTERFACES,
volume = "17",
number = "4",
pages = "375--406",
month = sep,
year = "1995",
CODEN = "CSTIEZ",
ISSN = "0920-5489",
bibdate = "Wed Oct 30 05:42:27 MST 1996",
abstract = "Extending C with arrays of variable length is critical
in evolving C as a primary scientific programming
language. Arrays of variable length whose size is known
only at program execution time are implemented in the
$C^H$ programming language. $C^H$ is designed to be a
superset of C. This paper describes the current
implementation of arrays of variable length in the
$C^H$ programming language. It also makes comparison
studies of variable length arrays in $C^H$ with those
implemented in GNU C compiler gcc and Cray Research
standard C compiler SCC as well as other alternate
proposals.",
acknowledgement = ack-nhfb,
affiliation = "Integration Eng. Lab., California Univ., Davis, CA,
USA",
classification = "C6140D (High level languages)",
keywords = "Primary scientific programming language; Variable
length arrays; C language extension; Program execution
time; $C^H$ programming language; GNU C compiler gcc;
Cray Research standard C compiler SCC",
pubcountry = "Netherlands",
thesaurus = "C language",
}
@InProceedings{Cooperman:1995:SBP,
author = "G. Cooperman",
title = "{STAR\slash MPI}: binding a parallel library to
interactive symbolic algebra systems",
crossref = "Levelt:1995:IPI",
pages = "126--132",
month = "",
year = "1995",
bibdate = "Wed Oct 30 05:42:27 MST 1996",
abstract = "Many users of symbolic algebra systems have felt the
need for greater CPU power. Yet few of them have
ventured into parallel programming due to the steep
learning curve and the unfamiliar programming
environment entailed by such an effort. In an attempt
to remedy that situation, the parallel library MPI has
been integrated into both GCL (GNU Common LISP) and GAP
(a general purpose language for mathematical group
theory). These implementations are examples that extend
bindings of MPI to interactive languages. (MPI already
has bindings to the compiled languages C and FORTRAN.)
Further, this binding to an interactive language
retains the interactive environment during execution.
Further, STAR/MPI represents a blueprint for binding
MPI to other interactive languages besides GCL and GAP,
from which comes the name STAR/MPI, or */MPI. STAR/MPI
includes a simple SPMD architecture on top of this MPI
binding. An important class of sequential algorithms is
described that can be parallelized with little effort
using STAR/MPI architecture. Since GAP is
representative of systems for discrete mathematics and
LISP is the basis for several symbolic algebra systems
with strengths in nondiscrete mathematics, it is hoped
to gain broad feedback on the issues involved. Although
vendor-specific, interactive, parallel languages exist,
this appears to be the first attempt at defining a
binding of a vendor-independent, portable, parallel
library to arbitrary interactive languages.",
acknowledgement = ack-nhfb,
affiliation = "Coll. of Comput. Sci., Northeastern Univ., Boston, MA,
USA",
classification = "C7310 (Mathematics computing); C6110P (Parallel
programming); C6115 (Programming support); C6110B
(Software engineering techniques)",
keywords = "Symbolic algebra; STAR/MPI; Parallel library;
Interactive symbolic algebra systems; GCL; GNU Common
LISP; Mathematical group theory",
thesaurus = "Parallel programming; Software libraries; Symbol
manipulation",
}
@InProceedings{Cooperman:1995:SMB,
author = "Gene Cooperman",
title = "{STAR\slash MPI}: Binding a Parallel Library to
Interactive Symbolic Algebra Systems",
crossref = "Levelt:1995:IIS",
pages = "126--132",
year = "1995",
bibdate = "Sat May 25 11:26:04 1996",
bibsource = "Compendex database",
abstract = "This work is aimed at making parallel programming more
accessible to users of symbolic algebra systems and to
users of interactive languages in general. This is done
by integrating MPI (Message Passing Interface), a
portable, parallel message-passing library, with two
interactive languages: GCL (GNU Common LISP), and GAP.
The GAP system includes a general purpose language for
mathematical group theory, and LISP is the basis for
several general-purpose symbolic algebra systems. In
addition, a simple master-slave abstraction is written,
so that end-users need not learn any of the details of
the MPI function calls. This work is distinct from past
studies in that it provides the ability to
interactively create, test and modify a distributed
environment using the original interactive language and
a portable parallel library.",
acknowledgement = ack-nhfb,
affiliation = "Northeastern Univ",
affiliationaddress = "Boston, MA, USA",
classification = "921.1; 722.4; 723.1; 722.2; 723.5; 721.1",
conference = "Proceedings of the 1995 International Symposium on
Symbolic and Algebraic Computation",
journalabr = "Int Symp Symbol Algebraic Comput ISSAC Proc",
keywords = "Algebra; Interactive computer systems; Parallel
processing systems; Computer programming; Interfaces
(computer); Mathematical techniques; Computer
programming languages; User interfaces; Computer
software; Computer simulation; Computational methods;
Message passing interface; Parallel library;
Interactive symbolic algebra systems; Interactive
languages",
meetingaddress = "Montreal, Can",
meetingdate = "Jul 10--12 1995",
meetingdate2 = "07/10--12/95",
}
@Article{Franky:1995:DPS,
author = "M. C. Franky",
title = "{DGDBM}: programming support for distributed
transactions over replicated files",
journal = j-OPER-SYS-REV,
volume = "29",
number = "3",
pages = "64--74",
month = jul,
year = "1995",
CODEN = "OSRED8",
ISSN = "0163-5980",
bibdate = "Wed Oct 30 05:42:27 MST 1996",
abstract = "The paper describes a set of facilities for
programming distributed transactions over replicated
files which are accessed by a primary key. The files
are located on several computers communicated by a
network. Each site has a set of GNU dbm (Gdbm) routines
for local file management. Above this platform we have
built an interface and a set of services for
distributed transaction programming. The resulting
programming environment, 'DGDBM', offers transparency
in relation to data distribution and data replication,
giving a centralized vision to the programmer. It
assures the functions of management of distributed
transactions such as failure recovery, mutual
consistency between copies and concurrency control.
DGDBM is a useful support for distributed application
programming over replicated files in UNIX networks and
it is available as an API (application programming
interface) for the C programmer. The paper describes
the services offered by DGDBM to the programmer, the
architecture of the system, the adopted solutions for
distributed transaction management, the general aspects
of design and implementation and the perspectives and
planned extensions for this project.",
acknowledgement = ack-nhfb,
affiliation = "Dept. de Ingeniera Sistemas y Comput., Univ. de Los
Andes, Santafe de Bogota, Colombia",
classification = "C6115 (Programming support); C6160B (Distributed
databases); C6130 (Data handling techniques); C6150J
(Operating systems); C6150N (Distributed systems
software); C6110 (Systems analysis and programming);
C6150E (General utility programs)",
keywords = "Replicated files; Programming support; DGDBM; Primary
key; Computer network; GNU dbm routines; Local file
management; Interface; Services; Distributed
transaction programming; Transparency; Data
distribution; Data replication; Centralized vision;
Failure recovery; Mutual copy consistency; System
architecture; Concurrency control; UNIX networks; API;
C programmer",
pubcountry = "USA",
thesaurus = "Application program interfaces; Concurrency control;
Local area networks; Programming; Programming
environments; Replicated databases; System recovery;
Transaction processing; UNIX",
}
@InProceedings{Harrold:1995:ASD,
author = "M. J. Harrold and L. Larsen and J. Lloyd and D. Nedved
and M. Page and G. Rothermel and M. Singh and M.
Smith",
title = "Aristotle: a system for development of program
analysis based tools",
crossref = "ACM:1995:PAS",
pages = "110--119",
month = "",
year = "1995",
bibdate = "Wed Oct 30 05:42:27 MST 1996",
abstract = "Aristotle provides program analysis information, and
supports the development of software engineering tools.
Aristotle's front end consists of parsers that gather
control flow, local dataflow and symbol table
information for procedural language programs. We
implemented a parser for C by incorporating analysis
routines into the GNU C parser; a C++ parser is being
implemented using similar techniques, Aristotle tools
use the data provided by the parsers to perform a
variety of tasks, such as dataflow and control
dependence analysis, dataflow testing, graph
construction and graph viewing. Most of Aristotle's
components function on single procedures and entire
programs. Parsers and tools use database handler
routines to store information in, and retrieve it from,
a central database. A user interface provides
interactive menu-driven access to tools, and users can
view results textually or graphically. Many tools can
also be invoked directly from applications programs,
which facilitates the development of new tools. To
assist with system development and maintenance, we are
also creating support tools for managing bug and test
suite databases.",
acknowledgement = ack-nhfb,
affiliation = "Dept. of Comput. Sci., Clemson Univ., SC, USA",
classification = "C6150G (Diagnostic, testing, debugging and
evaluating systems); C6115 (Programming support); C1160
(Combinatorial mathematics); C6180 (User interfaces);
C6150C (Compilers, interpreters and other processors);
C6110B (Software engineering techniques)",
keywords = "Aristotle; Program analysis information; Software
engineering tool development; Program analysis based
tool development; Front end; Parsers; Control flow
information; Local dataflow information; Symbol table
information; Procedural language programs; Analysis
routines; GNU C parser; C++ parser; Control dependence
analysis; Dataflow dependence analysis; Dataflow
testing; Graph construction; Graph viewing; Database
handler routines; User interface; Menu-driven tool
access; Bug databases",
thesaurus = "Data flow analysis; Data flow graphs; Grammars;
Program compilers; Program debugging; Program testing;
Software maintenance; Software tools; User interfaces",
}
@Article{Hatakeyama:1995:IEJ,
author = "T. Hatakeyama and H. Kakuda",
title = "The implementation and evaluation of a {Japanese}
editor utilizing pronunciation-information",
journal = j-TRANS-INFO-PROCESSING-SOC-JAPAN,
volume = "36",
number = "1",
pages = "119--128",
month = jan,
year = "1995",
CODEN = "JSGRD5",
ISSN = "0387-5806",
bibdate = "Wed Oct 30 05:47:28 MST 1996",
abstract = "We designed and implemented a Japanese editor that
keeps boundaries of phrases and pronunciation spellings
which are used for Kana-kanji conversion, and evaluated
its advantages. The editor utilizes the boundaries and
pronunciation spellings. We call the editor 'JEM
(Japanese Editor with Multi-layered text structure)'.
The characteristic of JEM is that it has layers which
keep information of the boundaries and pronunciation
spellings. Using this editor, a user can I-search
(incremental search) and dynamic abbreviate expand in
Japanese text as well as in English, and he/she can
re-convert effectively. Except for these functions, JEM
can be used in the same way as the fundamental-mode
method of Emacs. JEM's I-search can be performed faster
than Kana-kanji conversion type I-search. In
experiments, we found that users move the editor's
cursor to a point as fast as in other ways.",
acknowledgement = ack-nhfb,
classification = "C6130 (Data handling techniques)",
keywords = "Japanese editor; Pronunciation information; Phrase
boundaries; Pronunciation spellings; Kana-kanji
conversion; Evaluation; JEM; Multi-layered text
structure; I-search; Incremental search; Japanese text;
English text; Editor cursor",
language = "Japanese",
pubcountry = "Japan",
thesaurus = "Character sets; Text editing",
}
@MastersThesis{He:1995:FPI,
author = "Lei He",
title = "Floating point implementation for {Motorola HC6811C}:
{GNU C} cross-compiler",
type = "Master's Thesis",
school = "Ryerson Polytechnic University",
address = "Toronto, Ontario, Canada",
year = "1995",
bibdate = "Mon Apr 18 06:29:41 2005",
acknowledgement = ack-nhfb,
xxnote = "Check thesis type??",
}
@Article{Kermarrec:1995:IEF,
author = "Yvon Kermarrec and Laurent Nana Tchamnda and Laurent
Pautet",
title = "Implementing an efficient fault tolerance mechanism in
{Ada 9X}: an early experiment with {GNAT}",
journal = j-ADA-USER-J,
volume = "16",
number = "4",
pages = "224--228",
month = dec,
year = "1995",
CODEN = "AUJOET",
ISSN = "0268-652X",
bibdate = "Sat Oct 10 13:38:57 1998",
bibsource = "Compendex database;
http://snowwhite.it.bton.ac.uk/ada/adauser/dec95.html",
abstract = "This paper presents our experience in introducing
features related to fault tolerance in the GNAT system
[Schonbert et al 94]. GNAT (GNU New York Ada
Translator) is being developed at New York University
in the `spirit' of the Free Software Foundation. With
such a system, the Ada programmer can find an efficient
Ada 9X compiler and the Ada environment developer can
build his tools.",
acknowledgement = ack-nhfb,
affiliation = "ENST de Bretagne",
affiliationaddress = "Brest, Fr",
classification = "722.4; 723.1; 723.1.1; 723.5; 912.2; C6110B
(Software engineering techniques); C6140D (High level
languages); C6150C (Compilers, interpreters and other
processors)",
corpsource = "ENST de Bretagne, Brest, France",
journalabr = "Ada User J",
keywords = "Ada; Ada (programming language); Ada 9X compiler; Ada
environment developer; Ada programmer; Computer aided
software engineering; Computer software; efficient
fault tolerance mechanism; Fault tolerant computer
systems; gnat; GNAT system; GNU New York Ada
Translator; Program compilers; program compilers;
Program translators; programming; Project management;
Software engineering; software fault tolerance;
Software Package Ada 9X",
pubcountry = "Netherlands",
treatment = "P Practical",
}
@Article{Kneip:1995:ACE,
author = "J. Kneip and M. Ohmacht and K. Ronner and P. Pirsch",
title = "Architecture and {C++}-programming environment of a
highly parallel image signal processor",
journal = j-MICROPROC-MICROPROG,
volume = "41",
number = "5-6",
pages = "391--408",
month = oct,
year = "1995",
CODEN = "MMICDT",
ISSN = "0165-6074",
bibdate = "Wed Oct 30 05:42:27 MST 1996",
abstract = "A highly parallel single-chip image signal processor
architecture has been derived by analysis of image
processing algorithms. Available levels of parallelism
and their associated demands on data access, control
and complexity of operations were taken into account.
The RISC architecture, called 'HiPAR-DSP', consists of
a control unit, 16 parallel ASIMD-controlled data paths
with autonomous addressing and instruction selection
capability, a local data cache per data path, a shared
memory with matrix type data access and a powerful
DMA-unit. The proposed architecture was designed by
assessing the results of an analysis of characteristic
algorithm properties with respect to their inherent
parallelization resources, achievable speed up and
implementation costs. This resulted in a proper balance
between the degree of parallelism and flexibility,
leading to a high performance for a wide field of
applications. Additional measures were taken to support
an efficient high level programmability of the
processor. This was achieved by the concurrent
implementation of special architectural features and a
C++-programming environment. It consists of an
adaptation of the GNU C++-compiler and an optimizing
assembler, supporting all levels of concurrency offered
by the hardware. While most levels of parallelization
are kept invisible to the programmer, data-level
parallelism is expressed by the programmer using
special new data types added to the standard
C/C++-data-types. A sustained performance of about 2.0
Gigaoperations per second is achieved by the 100 MHz
clocked processor for numerous image processing
algorithms, leading to a processing time e.g. for a
normalized correlation of a 512*512 image with a 32*32
correlation mask of 450 ms. Thus, a performance is
achieved with a programmable parallel processor
architecture that hitherto required the application of
a dedicated integrated circuit.",
acknowledgement = ack-nhfb,
affiliation = "Lab. fur Informationstechnol., Hannover Univ.,
Germany",
classification = "C5135 (Digital signal processing chips); C5260B
(Computer vision and image processing techniques);
C5220P (Parallel architecture); C6115 (Programming
support); C6110P (Parallel programming); C6150N
(Distributed systems software); C6120 (File
organisation); C6150C (Compilers, interpreters and
other processors); C5470 (Performance evaluation and
testing)",
keywords = "C++ programming environment; Highly parallel
single-chip image signal processor architecture; Image
processing algorithms; Performance; RISC architecture;
HiPAR-DSP; Control unit; Parallel ASIMD-controlled data
paths; Autonomous addressing; Instruction selection
capability; Local data cache; Shared memory; Matrix
type data access; DMA unit; Speed up; Implementation
costs; High level programmability; GNU C++-compiler;
Optimizing assembler; Concurrency; Data-level
parallelism; Data types; 450 Ms; 100 MHz",
numericalindex = "Time 4.5E-01 s; Frequency 1.0E+08 Hz",
pubcountry = "Netherlands",
thesaurus = "Cache storage; Digital signal processing chips; Image
processing; Parallel algorithms; Parallel
architectures; Parallel programming; Parallelising
compilers; Performance evaluation; Program assemblers;
Programming environments; Reduced instruction set
computing; Shared memory systems",
}
@InProceedings{Lord:1995:AGI,
author = "Thomas Lord",
title = "An Anatomy of Guile: The Interface to {Tcl\slash Tk}",
crossref = "USENIX:1995:PTT",
pages = "95--114",
day = "6--8",
month = jul,
year = "1995",
bibdate = "Thu Feb 22 08:12:14 MST 1996",
bibsource = "http://www.usenix.org/,
ftp://ftp.uu.net/library/bibliography",
acknowledgement = ack-nhfb,
affiliation = "Cygnus Support",
keywords = "Tcl; Tk; USENIX",
searchkey = "su:usenix",
}
@InProceedings{Mashayekhi:1995:URA,
author = "V. Mashayekhi and M. Maley and J. Riedl",
title = "User recovery of audio operations",
crossref = "IEEE:1995:PIC",
pages = "329--334",
month = "",
year = "1995",
bibdate = "Wed Oct 30 05:47:28 MST 1996",
abstract = "Computer interfaces that support user recovery can
radically alter a user's interaction style. Users can
explore alternatives freely, secure in the knowledge
that they can undo actions and restore previous states
if necessary. A text-editor, like EMACS, where users
can restore the state of an editing session to a
correct previous state, is an example of such a system.
Editors for textual, graphical, and many other media
types commonly support user recovery. Support for and
understanding of recovery in applications that use
audio is not as widespread. Audio is characterized by
its large volume, lack of easy indexing, and difficulty
in defining inverse operations. We present a
theoretical model of recovery for audio operations to
help user interface designers and implementors. Our
model maps an audio operation to a recovery policy and
then the recovery policy to a recovery mechanism. The
model uses a classification of audio operations that
aids in choosing applicable recovery policies.",
acknowledgement = ack-nhfb,
affiliation = "Dept. of Comput. Sci., Minnesota Univ., Minneapolis,
MN, USA",
classification = "B6450 (Audio equipment and systems); B6220F (ISDN
and multimedia terminal equipment); C6130M
(Multimedia); C6180 (User interfaces); C5540B
(Interactive-input devices)",
keywords = "User recovery; Audio operations; Computer interfaces;
User interaction style; Undoing actions; Previous state
restoration; Text-editor; Indexing; Editing session;
Applicable recovery policies; Recovery mechanism;
Classification; Digital audio; Human-computer
interfaces; Undo/skip/redo",
thesaurus = "Audio systems; Multimedia computing; System recovery;
User interfaces",
}
@InProceedings{Miller:1995:UGC,
author = "J. W. V. Miller and M. Shridhar and B. N. Shabestari",
title = "Using {GNU C} to develop {PC-based} vision systems
[2597-31]",
crossref = "Batchelor:1995:MVA",
pages = "253--258",
year = "1995",
bibdate = "Tue Oct 29 19:42:28 MST 1996",
acknowledgement = ack-nhfb,
searchkey = "ti:gawk or gnu",
}
@Article{Mittag:1995:CDG,
author = "L. Mittag",
title = "Cross debugging with {GNU GDB}",
journal = j-EMBED-SYS-PROG,
volume = "8",
number = "8",
pages = "28--30, 32",
month = aug,
year = "1995",
CODEN = "EYPRE4",
ISSN = "1040-3272",
bibdate = "Wed Oct 30 05:42:27 MST 1996",
abstract = "Building an environment for cross development is not a
task for the faint of heart. All the tools programmers
tend to take for granted must be crafted together for
what appears to be a unique environment, whether that
uniqueness is in the host, the target, or the link
connecting the two. The paper explains how to set up
and use the GDB debugger from the Free Software
Foundation to debug the target system from your own
UNIX workstation.",
acknowledgement = ack-nhfb,
affiliation = "Mittag Enterprises, USA",
classification = "C6150G (Diagnostic, testing, debugging and
evaluating systems); C6110 (Systems analysis and
programming)",
keywords = "Cross debugging; Programming environment; Programming
tools; GDB debugger; Free Software Foundation; UNIX
workstation",
pubcountry = "USA",
thesaurus = "Program debugging; Programming environments; Public
domain software; UNIX",
}
@Book{Paxson:1995:FVF,
author = "Vern Paxson",
title = "{Flex}, version 2.5: {A} fast scanner generator",
publisher = pub-FSF,
address = pub-FSF:adr,
edition = "2.5",
pages = "????",
month = mar,
year = "1995",
ISBN = "????",
ISBN-13 = "????",
LCCN = "????",
bibdate = "Wed Sep 20 10:36:28 2000",
acknowledgement = ack-nhfb,
}
@Article{Robbins:1995:WG,
author = "Arnold Robbins",
title = "What's {GNU}?",
journal = j-LINUX-J,
volume = "10",
pages = "??--??",
month = feb,
year = "1995",
CODEN = "LIJOFX",
ISSN = "1075-3583",
bibdate = "Fri Oct 9 08:35:26 MDT 1998",
bibsource = "http://noframes.linuxjournal.com/lj-issues/issue10/index.html",
acknowledgement = ack-nhfb,
}
@Article{Sechrest:1995:OGS,
author = "John Sechrest",
title = "Opinion: {Gnu} and {Solaris}",
journal = j-LOGIN,
volume = "20",
number = "4",
pages = "5--??",
month = aug,
year = "1995",
CODEN = "LOGNEM",
ISSN = "1044-6397",
bibdate = "Thu Feb 22 08:12:14 MST 1996",
bibsource = "http://www.usenix.org/,
ftp://ftp.uu.net/library/bibliography",
acknowledgement = ack-nhfb,
}
@Article{Shapiro:1995:PAP,
author = "Jim Shapiro",
title = "Prototyping Algorithms in Perl",
journal = j-LINUX-J,
volume = "16",
pages = "??--??",
month = aug,
year = "1995",
CODEN = "LIJOFX",
ISSN = "1075-3583",
bibdate = "Fri Oct 9 08:35:26 MDT 1998",
bibsource = "http://noframes.linuxjournal.com/lj-issues/issue16/index.html",
URL = "http://noframes.linuxjournal.com/lj-issues/issue16/;
http://noframes.linuxjournal.com/lj-issues/issue16/perls.pl.txt;
ftp://ftp.ssc.com/pub/lj/issue16/perls.pl.gz",
abstract = "As mentioned in the article, Jim's perl programming
hints script is available for retrieval, in either
straight text or in a GNU-zipped file.",
acknowledgement = ack-nhfb,
}
@Book{Stallman:1995:DGG,
author = "Richard Stallman and Roland H. Pesch",
title = "Debugging with {GDB}: the {GNU} source-level
debugger",
publisher = pub-FSF,
address = pub-FSF:adr,
edition = "4.12, for {GDB} version 4.14",
pages = "vi + 184",
month = jan,
year = "1995",
ISBN = "1-882114-08-6",
ISBN-13 = "978-1-882114-08-5",
LCCN = "QA76.6 .S693 1995",
bibdate = "Thu Oct 31 08:43:55 MST 1996",
acknowledgement = ack-nhfb,
keywords = "gdb (computer file); debugging in computer science --
computer programs",
}
@Book{Stallman:1995:GEM,
author = "Richard Stallman",
title = "{GNU Emacs} manual",
publisher = pub-FSF,
address = pub-FSF:adr,
edition = "11th, {Emacs} version 19.29",
pages = "xiv + 470",
month = jun,
year = "1995",
ISBN = "1-882114-52-3",
ISBN-13 = "978-1-882114-52-8",
LCCN = "????",
bibdate = "Wed Oct 30 08:29:31 MST 1996",
note = "Includes GNU Emacs reference card.",
acknowledgement = ack-nhfb,
keywords = "Text editors (Computer programs); Computer software
--- Development.",
}
@Article{Stevens:1995:CP,
author = "Al Stevens",
title = "{C} Programming",
journal = j-DDJ,
volume = "20",
number = "8",
pages = "121--??",
month = aug,
year = "1995",
CODEN = "DDJOEB",
ISSN = "1044-789X",
bibdate = "Tue Sep 03 09:16:53 1996",
bibsource = "http://www.ddj.com/index/author/index.htm, UnCover
database",
abstract = "GNU C++ from the Free Software Foundation is part of a
set of programming tools and utilities available from
many online locations and several commercial CD-ROMs.
After working with the compiler, Al decides this
toolset is hard to beat --- if you need a C++ compiler
that's freely distributable and royalty-free.",
acknowledgement = ack-nhfb,
}
@InProceedings{Trans:1995:UPI,
author = "K. Trans",
title = "The Use of Planning and Interpretation in Developing
an On- Line {EMACS} Help Facility",
crossref = "Aamodt:1995:SSC",
pages = "463--467",
year = "1995",
bibdate = "Wed Oct 30 06:32:55 MST 1996",
acknowledgement = ack-nhfb,
}
@Article{Welsh:1995:ILK,
author = "Matt Welsh",
title = "Implementing Loadable Kernel Modules For {Linux}",
journal = j-DDJ,
volume = "20",
number = "5",
pages = "18--20, 22, 24, 96",
month = apr,
year = "1995",
CODEN = "DDJOEB",
ISSN = "1044-789X",
bibdate = "Mon Sep 30 18:44:06 1996",
bibsource = "Compendex database",
abstract = "The most recent release of Linux, a freely distributed
Unix-like operating system, supports dynamically loaded
kernel modules. Matt describes the
dynamic-kernel-module implementation, concentrating on
the steps required to load a module on a running
system.",
abstract2 = "The most recent configuration of Linux, a freely
distributed UNIX-like operating system, incorporates