Extending Gnu Troff to Produce Html Through The

Total Page:16

File Type:pdf, Size:1020Kb

Extending Gnu Troff to Produce Html Through The G. MULLEY and W.LEMBERG: EXTENDING GNU TROFF TOPRODUCE HTML EXTENDING GNU TROFF TOPRODUCE HTML THROUGH THE TECHNIQUE OF NEXT EVENT SIMULATION GAIUS MULLEY,WERNER LEMBERG School of Computing,University of Glamorgan, CF37 1DL, UK E-Mail: [email protected] Kl. Beurhausstr.1,44137 Dortmund, Germany E-Mail: [email protected] Abstract: This paper reports on a technique used to generate accurate HTML output from GNU Troff. GNU Troff is a typesetting package which reads plain text mixed with formatting commands and produces formatted output. It supports a number of devices and nowsupports the production of HTML.The paper discusses the design of the HTML device driver grohtml and modifications made to GNU Troff. The front end program troff wasmodi- fied to maintain a reduced state machine which is examined each time a glyph is passed to the back end device driver(post-grohtml). Anychange in system state between the production of twoglyphs results in a sequence of events being passed to the device driver. There is a direct correspondence between this technique and creating ascript for a next event simulation queue. Furthermore the device driverreconstructs the system state and for- mats the HTML according to state changes caused when processing the event queue. This technique works well, as it minimises the state information passed from front end to back end device driverwhilst still preserving the high levellayout of the text. Using this technique GNU Troffeffectively translates input source into another mark-up language and thus this technique could be extended to translate GNU Troffdocuments into anyofthe OpenOffice supported formats. Troffhas been in use for three decades nowand is still actively used by authors. Troff’sbiggest use, however, istoformat manual pages for GNU/Linux and other UNIX likeoperating systems. Introducing this facility into GNU Troffprovides users with the ability to translate legacy documents into HTML and in the future to a format supported by OpenOffice. Ke ywords: groff, troff, grohtml, HTML, simulation. Brian Kernighan modified troff so that it could INTRODUCTION produce output for a number of different typesetting devices, while at the same time retaining the same GNU Troffisareimplementation of the program input language specification. The input language troff which is available on the UNIX operating sys- wassorobust that a number of preprocessors were tem. The original troff waswritten in PDP-11 written to provide reference [Tuthill, 1986], ta- assembly language by Joe Ossanna in 1973. Tw o ble [Lesk, 1976a], picture [Kernighan, 1991, Wyk, years later it was rewritten in C and afterwards it 1982] and equation handling [Kernighan, 1977, went through a series of revisions until Joe Ossanna Kernighan, 1976] (refer, tbl, pic and eqn respec- died in 1977. tively). These programs were executed in a pipeline and troff transformed the heavily preprocessed Brian Kernighan continued troff development for the next 15 years and it is testament to the original formatting commands and text into device dependent design that the input language remained the same. output [Kernighan, 1978]. Although the input to Much of the original documentation receivedminor troff wasdevice independent it was also very low leveland therefore users were encouraged to use changes as new troff releases were issued and therefore Joe’sname was retained on these manu- macro sets when producing documents [Lesk, als [Ossanna, 1992]. 1976b]. During the 1980s the internals were mod- estly revised and a number of newmacro sets were written [Allman, 1980, Smith, 1980]. The macro sets provided freedom in document styling (similar Published in the International Journal of to modern HTML style sheets) and theyincluded: SIMULATION Vol. 6 No 7-8, ISSN arbitrary style headers and footers; arbitrary style 1473-804x online, 1473-8031 print, 2005 footnotes; automatic sequence numbering for I.J. of SIMULATION Vol. 6 No 7-8 37 ISSN 1473-804x online, 1473-8031 print G. MULLEY and W.LEMBERG: EXTENDING GNU TROFF TOPRODUCE HTML paragraphs, sections, etc; multiple column output; and original UNIX Troffpackages rely heavily on the dynamic font and point-size control; arbitrary hori- pipeline principle it has naturally led to the pre- zontal and vertical local motions at anypoint; math- processors (pic, tbl and eqn)translating their high ematical bracket construction, and line drawing levelcommands onto much lower level troff com- functions [Ossanna, 1992]. mands. In turn, this has meant that much of the high levelinformation (for example where a table starts During the 1980s troff wasextended to handle and ends) is lost. Furthermore, using anyofthe manydifferent devices, this was accomplished by macro packages will result in manylow lev elcom- splitting the task of troff into twocomponents. mands to format abstracts, titles, footnotes, para- The front end ditroff produced device indepen- graphs, lists, hanging indents etc. Consequently, dent code and the back end device driverwhich sim- translating troff input source into HTML cannot be ply translated the device independent code into the achievedbywriting a device driverwhich simply target device commands. reads ditroff input and produces HTML output. Consider the diagram in Figure 1 which shows the James Clark begantowork on the GNU implemen- keycomponents of a simple groff command line tation of the troff family of tools in 1989. This was invocation together with a synopsis of the data pass- to be a completely newimplementation of all the ing though the pipeline. In Figure 1 the troff input preprocessors, the ditroff program and the macro consists of requests or calls to macros (lines prefixed sets. The first release of groff (version 0.3.1) with a period) and text. Troffinput might also occurred in June 1990 and it included a replacement include text with escapes, for example the word for ditroff, eqn, tbl and pic.Italso included a program can be typeset by temporarily reducing the replacement for the me macros and the man macros. point size by 1 and altering the font to Courier.The The replacement programs were mostly written in word and escapes can be encoded as C++ and often supported extensions and removed \s-1\fCprogram\s+1\fP. various static data size limitations. Since 1999 the In Figure 1 the final output is PostScript (the default groff package has had newmaintainers and has device) and the invocation also includes the ms undergone active dev elopment. It supports the com- macro package. Figure 2 shows howaPostScript mon macro sets associated with troff (man, me, ms, printer interprets the output from Figure 1. mdoc and mm). However groff also provides a modern macro set (mom)and also provides newpre- processors and support for colour. Abasic title DESCRIPTION OF THE PROBLEM 1. Heading at level1 1.1. Heading at level2 Troffwas widely used in the 1970s and 1980s. All UNIX documentation, release notes for both the 1.1.1. Heading at level3 AT&T and BSD UNIX variants was written in First paragraph body troff.Manypapers in the CACM and Software Figure 2: displaying the PostScript output Practice and Experience journals were also produced Notice howthe output only knows which using troff.Eventoday all UNIX and GNU/Linux ditroff font is to be used, the font size and the position that manual pages are written in troff using the man the glyph should be placed. Another example that macro set and some authors advocate using troff above other WYSIWYG tools to typeset their an HTML device drivermust translate accurately is books [Tanenbaum, 1997, Stevens, 1998, Schaffter, shown in Figure 3. 2004]. The start of an indented paragraph example in which line 1, line 2 and line 3 are Groffprovides compatibility with troff as well as vertically aligned. manymodern enhancements, image handling, colour .LP and limited pdf mark capability.Clearly the addition .IP once of an HTML device driverwould be useful. line 1 .IP twice GNU Troffcopied the original design of UNIX Troff, line 2 which maps the input source onto a physical device .IP threefold line 3 through the use of a device independent language. Figure 3: examples of indented paragraphs Through this language it effectively plots each glyph at Cartesian coordinate position on a page. The dif- Here we see from the output shown in Figure 4 that ficulty in translating troff source into HTML is the ms macro set diverted the indented paragraph exacerbated by the fact that both HTML and troff label parameter once, twice and threefold into a source are mark-up languages. As the GNU Troff macro. It then tests to see whether the macro width I.J. of SIMULATION Vol. 6 No 7-8 38 ISSN 1473-804x online, 1473-8031 print G. MULLEY and W.LEMBERG: EXTENDING GNU TROFF TOPRODUCE HTML Troffsource ditroffintemediate language postscript output .TL xTps %!PS-Adobe-3.0 Abasic title xres 72000 %%Creator: groff .NH 1 xinit %%DocumentNeed Heading at level1 troff-ms p1 grops %%+font Times-Ro .NH 2 xfont 6 TB %%DocumentSupp Heading at level2 f6 %%Pages: 1 .LP s12 H123k V 123k %%PageOrder: Asc First paragraph tA %%Orientation: body wh3000 %%EndComments tbasic Figure 1: Simple title, heading and paragraph is greater than a default length and if so it breaks the line before starting the indented paragraph. Clearly An example of encapsulated postscript the HTML device driverneeds to cope with these constructs, as theyare also heavily used in manual pages. The start of an indented paragraph example in which line 1, line 2 and line 3are vertically aligned. Figure 6: result of processing Figure 5 with groff -ms once line 1 twice line 2 threefold Afurther problem which needs to be addressed is line 3 the limited number of glyphs available in HTML. Figure 4: result of processing Figure 3 with groff -ms Forexample HTML has a restricted set of mathemat- ical glyphs and it is restricted in its ability to accu- Furthermore manydocuments will include encapsu- rately position these glyphs [Musciano, 1998].
Recommended publications
  • Reflections on Software Research
    TURING AWARD LECTURE Reflections on Software Research Can the circumstances that existed in Bell Labs that nurtured the UNIX project be produced again? DENNIS M. RITCHIE The UNIX 1 operating system has suddenly become System V is a supported product on several different news, but it is not new. It began in 1969 when Ken hardware lines, most recently including the 3B systems Thompson discovered a little-used PDP-7 computer and designed and built by AT&T. set out to fashion a computing environment that he UNIX is in wide use, and is now even spoken of as a liked. His work soon attracted me; I joined in the enter- possible industry standard. How did it come to suc- prise, though most of the ideas, and most of the work ceed? for that matter, were his. Before long, others from our There are, of course, its technical merits. Because the group in the research area of AT&T Bell Laboratories system and its history have been discussed at some were using the system; Joe Ossanna, Doug McIlroy, and length in the literature [6, 7, 11], I will not talk about Bob Morris were especially enthusiastic critics and con- these qualities except for one; despite its frequent sur- tributors. In 1971, we acquired a PDP-11, and by the face inconsistency, so colorfully annotated by Don Nor- end of that year we were supporting our first real users: man in his Datamation article [4] and despite its rich- three typists entering patent applications. In 1973, the ness, UNIX is a simple, coherent system that pushes a system was rewritten in the C language, and in that few good ideas and models to the limit.
    [Show full text]
  • Introduction to Linux
    Introduction to Linux Yuwu Chen HPC User Services LSU HPC LONI [email protected] Louisiana State University Baton Rouge June 17, 2020 Why you should learn Linux? . Linux is everywhere, not just on HPC . Linux is used on most web servers. Google or Facebook . Android phone . Linux is free and you can personally use it . You will learn how hardware and operating systems work . A better chance of getting a job Introduction to Linux 2 Why Linux for HPC - 2014 OS family system share OS family performance share http://www.top500.org/statistics/list/ November 2014 Introduction to Linux 3 Why Linux for HPC - 2019 OS family system share OS family performance share Linux is the most popular OS used in supercomputers http://www.top500.org/statistics/list/ November 2019 Introduction to Linux 4 Roadmap • What is Linux • Linux file system • Basic commands • File permissions • Variables • Use HPC clusters • Processes and jobs • File editing Introduction to Linux 5 History of Linux (1) . Unix was initially designed and implemented at AT&T Bell Labs 1969 by Ken Thompson, Dennis Ritchie, Douglas McIlroy, and Joe Ossanna . First released in 1971 and was written in assembly language . Re-written in C by Dennis Ritchie in 1973 for better portability (with exceptions to the kernel and I/O) Introduction to Linux 6 History of Linux (2) . Linus Torvalds, a student at University of Helsinki began working on his own operating system, which became the "Linux Kernel", 1991 . Linus released his kernel for free download and helped further development Introduction to Linux 7 History of Linux (3) .
    [Show full text]
  • Concept Learning
    Unit 3 Milestones and Giants in IT Industry Concept Learning The Birth of Unix Kenneth "Ken" Thompson (born February 4, 1943), commonly referred to as Ken in hacker circles, is an American pioneer of computer science. Having worked at Bell Labs for most of his career, Thompson designed and implemented the original Unix operating system. He also invented the B programming language, the direct predecessor to the C programming language, and was one of the creators and early developers of the Plan 9 operating systems. Since 2006, Thompson has worked at Google, where he co-invented the Go programming language. In 1983, Thompson and Ritchie jointly received the Turing Award "for their development of generic operating systems theory and specifically for the implementation of the UNIX operating system." C Ken Ken Thompson and Dennis Ritchie (standing) at Bell Labs, 1972 In the end of 1960s, the young engineer at AT&T Bell Labs Kenneth (Ken) Thompson worked on the project of Multics operating system. Multics (Multiplexing Information and Computer Services) was an experimental operating system for GE-645 mainframe, developed in 1960s by Massachusetts Institute of Technology, Bell Labs, and General Electric. It introduced many innovations, but had many problems. 1969 was that magic year in which mankind first went to the moon, ARPANET (the precursor to the Internet) was launched, UNIX was born, and a number of other interesting events occurred. It was also the year that Thompson wrote the game Space Travel. In 1969, frustrated by the slow progress and difficulties, Bell Labs withdrew from the MULTICS project and Thompson decided to write his own operating system, in large part because he wanted a decent system on which to run his game, Space Travel, on the PDP-7.
    [Show full text]
  • Nroff/Troff User's Manual
    AT&T Bell Laboratories Murray Hill, New Jersey 07974 Computing Science Technical Report No. 54 Troff User's Manual² Joseph F. Ossanna Brian W. Kernighan Revised November, 1992 Troff User's Manual² Joseph F. Ossanna Brian W. Kernighan AT&T Bell Laboratories Murray Hill, New Jersey 07974 Revised November, 1992 Troff User's Manual² Joseph F. Ossanna Brian W. Kernighan AT&T Bell Laboratories Murray Hill, New Jersey 07974 Introduction Troff and nroff are text processors that format text for typesetter- and typewriter-like terminals, respectively. They accept lines of text interspersed with lines of format control information and format the text into a printable, paginated document having a user-designed style. Troff and nroff offer unusual free- dom in document styling: arbitrary style headers and footers; arbitrary style footnotes; multiple automatic sequence numbering for paragraphs, sections, etc; multiple column output; dynamic font and point-size control; arbitrary horizontal and vertical local motions at any point; and a family of automatic overstriking, bracket construction, and line-drawing functions. Troff produces its output in a device-independent form, although parameterized for a specific device; troff output must be processed by a driver for that device to produce printed output. Troff and nroff are highly compatible with each other and it is almost always possible to prepare input acceptable to both. Conditional input is provided that enables the user to embed input expressly des- tined for either program. Nroff can prepare output directly for a variety of terminal types and is capable of utilizing the full resolution of each terminal. A warning, however: nroff necessarily cannot support all fea- tures of troff.
    [Show full text]
  • SEGURIDAD EN UNIX Y REDES Versión 2.1'
    SEGURIDAD EN UNIX Y REDES Versión 2.1' Antonio Villalón Huerta Julio, 2000 – Julio, 2002 – Enero, 2020 © Antonio Villalón Huerta © Derechos de edición: Nau Llibres - Edicions Culturals Valencianes, S.A. Tel.: 96 360 33 36, Fax: 96 332 55 82. C/ Periodista Badía, 10. 46010 Valencia E-mail: [email protected] web: www.naullibres.com Diseño de portada e interiores: Carol López, Pablo Navarro y Artes Digitales Nau Llibres ISBN: 978-84-18047-04-6 Dep.Legal: V-3368-2019 Imprime: Safekat Cualquier forma de reproducción, distribución, comunicación pública o transformación de esta obra solo puede ser realizada con la autorización de sus titulares, salvo excepción prevista por la ley. Diríjase a CEDRO (Centro Español de Derechos Reprográficos) si necesita fotocopiar o escanear algún fragmento de esta obra (www.conlicencia.com; 91 702 19 70 / 93 27204 45). i Copyright c 2000,2002 Antonio Villal´onHuerta. Permission is granted to copy, distribute and/or modify this do- cument under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with the Invariant Sections being `Notas del Autor' and `Conclusiones', with no Front-Cover Texts, and with no Back- Cover Texts. A copy of the license is included in the section entitled `GNU Free Documentation License'. ii ´Indice general Notas del autor XVII 1. Introducci´ony conceptos previos 1 1.1. Introducci´on. 1 1.2. Justificaci´ony objetivos . 2 1.3. >Qu´ees seguridad?........................... 3 1.4. >Qu´equeremos proteger? . 5 1.5. >De qu´enos queremos proteger? . 7 1.5.1.
    [Show full text]
  • A Research UNIX Reader: Annotated Excerpts from the Programmer's
    AResearch UNIX Reader: Annotated Excerpts from the Programmer’sManual, 1971-1986 M. Douglas McIlroy ABSTRACT Selected pages from the nine research editions of the UNIX®Pro grammer’sManual illustrate the development of the system. Accompanying commentary recounts some of the needs, events, and individual contributions that shaped this evolution. 1. Introduction Since it beganatthe Computing Science Research Center of AT&T Bell Laboratories in 1969, the UNIX system has exploded in coverage, in geographic distribution and, alas, in bulk. It has brought great honor to the primary contributors, Ken Thompson and Dennis Ritchie, and has reflected respect upon many others who have built on their foundation. The story of howthe system came to be and howitgrewand prospered has been told manytimes, often embroidered almost into myth. Still, aficionados seem neverto tire of hearing about howthings were in that special circle where the system first flourished. This collection of excerpts from the nine editions of the research UNIX Programmer’sManual has been chosen to illustrate trends and some of the lively give-and-take—or at least the tangible results thereof—that shaped the system. It is a domestic study,aimed only at capturing the way things were in the system’soriginal home. To look further afield would require a tome, not a report, and possibly a more dis- passionate scholar,not an intimate participant. The rawreadings are supplemented by my own recollec- tions as corrected by the memories of colleagues. The collection emphasizes development up to the Seventh Edition (v7*) in 1979, providing only occasional peeks ahead to v8 and v9.
    [Show full text]
  • Validators Report
    National Information Assurance Partnership ® TM Common Criteria Evaluation and Validation Scheme Validation Report Wind River Wind River Linux Secure 1.0 Report Number: CCEVS-VR-VID10430-2011 Dated: 2011-04-05 Version: 1.0 National Institute of Standards and Technology National Security Agency Information Technology Laboratory Information Assurance Directorate 100 Bureau Drive 9800 Savage Road STE 6940 Gaithersburg, MD 20899 Fort George G. Meade, MD 20755-6940 ACKNOWLEDGEMENTS Validation Team Daniel Faigin The Aerospace Corporation El Segundo, California Jerome Myers The Aerospace Corporation Columbia, Maryland Evaluation Team Jeremy Powell atsec Information Security Corporation Austin, Texas Andreas Siegert atsec Information Security Corporation Munich, Germany Table of Contents 1. EXECUTIVE SUMMARY .......................................................................................................................................... 5 2. IDENTIFICATION ...................................................................................................................................................... 5 3. CLARIFICATION OF SCOPE ................................................................................................................................... 7 4. SECURITY POLICY ................................................................................................................................................... 9 5. ASSUMPTIONS .......................................................................................................................................................
    [Show full text]
  • Computer Science: Reflections On
    http://www.nap.edu/catalog/11106.html We ship printed books within 1 business day; personal PDFs are available immediately. Computer Science: Reflections on the Field, Reflections from the Field Committee on the Fundamentals of Computer Science: Challenges and Opportunities, National Research Council ISBN: 0-309-54529-3, 208 pages, 6 x 9, (2004) This PDF is available from the National Academies Press at: http://www.nap.edu/catalog/11106.html Visit the National Academies Press online, the authoritative source for all books from the National Academy of Sciences, the National Academy of Engineering, the Institute of Medicine, and the National Research Council: • Download hundreds of free books in PDF • Read thousands of books online for free • Explore our innovative research tools – try the “Research Dashboard” now! • Sign up to be notified when new books are published • Purchase printed books and selected PDF files Thank you for downloading this PDF. If you have comments, questions or just want more information about the books published by the National Academies Press, you may contact our customer service department toll- free at 888-624-8373, visit us online, or send an email to [email protected]. This book plus thousands more are available at http://www.nap.edu. Copyright © National Academy of Sciences. All rights reserved. Unless otherwise indicated, all materials in this PDF File are copyrighted by the National Academy of Sciences. Distribution, posting, or copying is strictly prohibited without written permission of the National Academies Press. Request reprint permission for this book. Computer Science: Reflections on the Field, Reflections from the Field http://www.nap.edu/catalog/11106.html Computer Science Reflections on the Field, Reflections from the Field Committee on the Fundamentals of Computer Science: Challenges and Opportunities Computer Science and Telecommunications Board THE NATIONAL ACADEMIES PRESS Washington, D.C.
    [Show full text]
  • Praktikum Iz Softverskih Alata U Elektronici 2017/2018
    PRAKTIKUM IZ SOFTVERSKIH ALATA U ELEKTRONICI 2017/2018 Predrag Pejović 31. decembar 2017. Linkovi na primere: OS: http://tnt.etf.bg.ac.rs/~oe4sae/primeri-3-2017.zip LATEX 1: http://tnt.etf.bg.ac.rs/~oe4sae/primeri-4-2017.zip LATEX 2: http://tnt.etf.bg.ac.rs/~oe4sae/primeri-5-2017.zip LATEX 3: http://tnt.etf.bg.ac.rs/~oe4sae/primeri-6-2017.zip GNU Octave: http://tnt.etf.bg.ac.rs/~oe4sae/primeri-8-2017.zip gnuplot: http://tnt.etf.bg.ac.rs/~oe4sae/primeri-10-2017.zip Maxima: http://tnt.etf.bg.ac.rs/~oe4sae/primeri-11-2017.zip Python 1: http://tnt.etf.bg.ac.rs/~oe4sae/primeri-12-2017.py Python 2: http://tnt.etf.bg.ac.rs/~oe4sae/primeri-13-2017.zip PyLab: http://tnt.etf.bg.ac.rs/~oe4sae/primeri-14-2017.zip SymPy: http://tnt.etf.bg.ac.rs/~oe4sae/prim-sympy.py Lica (i ostali podaci o predmetu): I Predrag Pejović, [email protected], 102 levo, http://tnt.etf.rs/~peja PRAKTIKUM IZ SOFTVERSKIH ALATA I Strahinja Janković U ELEKTRONICI I sajt: http://tnt.etf.rs/~oe4sae 2017 I cilj: savladavanje niza programa koji se koriste za svakodnevne poslove u elektronici (i ne samo elektronici . ) I svi programi koji će biti obrađivani su slobodan softver (free software), legalno možete da ih koristite (i ne samo to) gde hoćete, kako hoćete, za šta hoćete, koliko hoćete, na kom računaru hoćete . I literatura . sve sa www, legalno, besplatno! I zašto svake godine (pomalo) updated slajdovi? Prezentacije predmeta A šta se tačno radi u predmetu, koji programi? 1.
    [Show full text]
  • Berkeley Odyssey
    BERKELEY ODYSSEY Ten years of BSD history by Marshall Kirk McKusick Ken Thompson and Dennis Ritchie presented the first UNIX paper at the Symposium on Operating Systems Principles at Pur­ due University in November, 1973. Professor Bob Fabry was in attendance and immediately became interested in obtaining a f copy of the system to experiment with at Berkeley. - At the time, Berkeley had only large mainframe computer systems doing batch processing, so the first order of business was to get a PDP-11/45 suitable for running the then current Version 4 of UNIX. The Computer Science Department, together with the Mathematics Department and the Statistics Department were able to jointly purchase a PDP-11/45. In January, 1974, a Version 4 tape was delivered and UNIX was installed by graduate student ¥<~ Keith Standiford. Although Ken Thompson was not involved in the installation — as he had been for most systems up to that time — his exper­ tise was soon needed to determine the cause of several strange system crashes. Because Berkeley had only a 300 baud acoustic- coupled modem without auto answer capability, Thompson would call Standiford in the machine room and have him insert the phone into the modem; in this way Thompson was able to remote­ ly debug crash dumps from New Jersey. 9mm £££ SK wmmMm&?<%?+•*>' '-•fy&Z j?m gis£^t - WMm ^ssg®mmm m^f, ?*S£ SP mm? r^^^m^^S?^^ :%%&m. ':•! '-^SS&^i * Jfjfe BERKELEY ODYSSEY Many of the crashes were project became the first group in immediate interest in the new caused by the disk controller's the Computer Science department system.
    [Show full text]
  • Teste-Livro-2Vfinal.Pdf
    SÉRIE PENSAMENTO MATEMÁTICO @ CIÊNCIA COMPUTAÇÃO Volume II: Da Computabilidade Formal às Máquinas Programáveis João Bosco M. Sobral EDIÇÃO DO AUTOR Jo~aoBosco M. Sobral Da Computabilidade Formal `as M´aquinasProgram´aveis S´erie Pensamento Matem´atico@ Ci^enciada Computa¸c~ao Edi¸c~aodo Autor Laborat´orioe Grupo de Pesquisa UFSC-CNPq Revis~aoT´ecnica Renato Bobsin Machado Dr. em Ci^encias- UNICAMP Programa de P´os-Gradua¸c~aoem Engenharia El´etricae Computa¸c~ao- UNIOESTE Universidade Federal de Santa Catarina Centro Tecnol´ogico Departamento de Inform´aticae Estat´ıstica Laborat´orioDMC & NS Projeto de Pesquisa PRPE 2013.1533 Jo~aoBosco M. Sobral Da Computabilidade Formal `as M´aquinasProgram´aveis S´erie Pensamento Matem´atico@ Ci^enciada Computa¸c~ao a 1¯ Edi¸c~ao Florian´opolis Edi¸c~ao do Autor 2015 c 2015 Jo~aoBosco M. Sobral Universidade Federal de Santa Catarina Centro Tecnol´ogico Departamento de Inform´aticae Estat´ıstica Laborat´orioDMC & NS Projeto de Pesquisa PRPE 2013.1533 Qualquer parte desta publica¸c~aopode ser reproduzida, desde que citada a fonte, e as fontes originais referenciadas neste livro. Al´emda bibliografia citada, o autor fez uso extensivo de diversos e excelentes sites da Internet, e imagens dos personagens e fatos marcantes na hist´oriada Matem´atica,da L´ogicae da Ci^enciada Computa¸c~ao,aos quais, n~aosendo de sua propriedade, est~ao devidamente referenciados. Conforme declarado `aAg^enciaBrasileira do ISBN, este livro n~ao´epara ser comercializado. Nota - Muito trabalho foi empregado nesta edi¸c~ao.No entanto, podem ocorrer erros de digita¸c~ao,impress~aoou d´uvida sobre os conceitos.
    [Show full text]
  • Chapter 9 on the Early History and Impact of Unix Tools to Build the Tools for a New Millennium
    Chapter 9 On the Early History and Impact of Unix Tools to Build the Tools for a New Millennium “When the barbarian, advancing step by step, had discovered the native metals, and learned to melt them in the crucible and to cast them in moulds; when he had alloyed native copper with tin and produced bronze; and, finally, when by a still greater effort of thought he had invented the furnace, and produced iron from the ore, nine tenths of the battle for civilization was gained. Furnished, with iron tools capable of holding both an edge and a point, mankind were certain of attaining to civilization.” Lewis Henry Morgan “When Unix evolved within Bell Laboratories, it was not a result of some deliberate management initiative. It spread through channels of technical need and technical contact.... This was typical of the way Unix spread around Bell Laboratories.... I brought out that little hunk of history to point out that the spread and success of Unix, first in the Bell organizations and then in the rest of the world, was due to the fact that it was used, modified, and tinkered up in a whole variety of organizations.” Victor Vyssotsky “UNIX is a lever for the intellect.” John R. Mashey Iron Tools and Software Tools Our era is witnessing the birth of an important new technology, different from any in the past. This new technology is the technology of software production. The new tools of our era are tools that make it possible to produce software. Unlike the tools forged in the past, software tools are not something you can grab or hold.
    [Show full text]