Squinting at Power Series

Total Page:16

File Type:pdf, Size:1020Kb

Squinting at Power Series Squinting at Power Series M. Douglas McIlroy AT&T Bell Laboratories Murray Hill, New Jersey 07974 ABSTRACT Data streams are an ideal vehicle for handling power series. Stream implementations can be read off directly from simple recursive equations that de®ne operations such as multiplication, substitution, exponentiation, and reversion of series. The bookkeeping that bedevils these algorithms when they are expressed in traditional languages is completely hidden when they are expressed in stream terms. Communicating processes are the key to the simplicity of the algorithms. Working versions are presented in newsqueak, the language of Pike's ``squint'' system; their effectiveness depends critically on the stream protocol. Series and streams Power series are natural objects for stream processing. Pertinent computations are neatly describable by recursive equations. CSP (communicating sequential process) languages1, 2 are good vehicles for implementation. This paper develops the algorithmic ideas and reduces them to practice in a working CSP language,3 not coincidentally illustrating the utility of concurrent programming notions in untangling the logic of some intricate computations on sequences. This elegant approach to power series computation, ®rst demonstrated but never published by Kahn and MacQueen as an application of their data stream system, is still little known.4 Power series are represented as streams of coef®cients, the exponents being given implicitly by ordinal position. (This is an in®nite analogue of the familiar representation of a polynomial as an array of coef®cients.) Thus the power series for the exponential function ∞ 1 1 1 e x = Σ x n / n! = 1 + x + __ x 2 + __ x 3 + ___ x 4 + . n = 0 2 6 24 - 2 - is represented as a stream of rationals: 1 1 1 1 , 1 , __ , __ , ___ , . 2 6 24 Throughout the paper power series will be denoted by symbols such as F, with the functional form F(x) being used when the variable must be made explicit. Subscripts denote individual coef®cients: ∞ i F(x) = Σ F i x . i = 0 The corresponding stream will be referred to by the same symbol in program font: F. In programs the names of power series variables contain capital letters; scalars are all lower case. When new power series are calculated from old, the input series will always be called F and G. In this section all programs are written in pseudocode; later they will be translated into the language ``newsqueak'' to be run in the ``squint'' system.* The methods are strictly formal; analytic interpretation of results depends on the convergence of the power series in question. Thus assertions such as x i = 1/( 1 − x) are understood to hold Σ i only where the series converge. Addition. The sum, S = F + G, is easy. Since S i = F i + G i, all we need is a looping process, which gets pairs of coef®cients from the two inputs and puts their sum on the output S. The following pseudocode suf®ces. # calculate power series S = F + G loop forever let f = get(F), g = get(G) put(f+g, S) Multiplication by a term. Simple termwise operations on single power series, such as multiplication by a constant, integration, or differentiation are equally easy to program and are left to the reader's imagination. Multiplication of a power series by x to yield P = x F involves a one-element delay: * The name of the language reveals descent from a mousier ancestor intended for programming a terminal with multiple asynchronous windows. The name ``squint'' suggests ``squeak interpreter.'' - 3 - # calculate power series P = x*F put(0, P) loop forever put(get(F), P) Multiplication. Calculation of the product, P = F G, is more challenging. By equating coef®cients in ∞ ∞ ∞ n i j Σ P n x = Σ F i x Σ G j x , n = 0 i = 0 j = 0 we obtain the familiar convolution for terms of the product, n P n = Σ F i G n − i , (1) i = 0 a most unpromising formula to program directly. To calculate the nth coef®cient we must have stored up the ®rst n terms of both inputs, thus sacri®cing most bene®ts of the stream representation. It will be best to look in another direction, guided by the adage: When iteration gets sticky, try recursion. We treat streams recursively, as we do lists, by handling the leading term and recurring on the tail. This means rewriting a power series as a ®rst term plus x times another power series: _ F = F 0 + x F. _ The tail F is a whole power series beginning with a constant term; it is ripe for recursion. Writing the multiplication P = F G recursively, we obtain _ __ _ _ __ 2 P 0 + x P = F 0 G 0 + x (F 0 G + G 0 F) + x F G. Equate coef®cients to ®nd the ®rst term of the product, P 0 = F 0 G 0 , leaving for the tail, _ __ _ _ __ P = F 0 G + G 0 F + x F G, (2) a sum of a constant F times a power series, another constant G times another power 0 _0 __ series, and x times a third power series, which is itself a product F G. We already know - 4 - how to multiply power series by a constant and how to add power series. We also know how to multiply power series by x; recursion does the rest. In the following pseudocode, f*G denotes an auxiliary stream for the product f G, and so on. Each auxiliary stream will be computed by another process. Thus f G will be computed by a process that multiplies a power series by a constant. When two auxiliary streams share an input stream, both see every element of the input. # calculate power series P = F*G let f = get(F), __ g = get(G) # F and G now "contain" Fbar and G put(f*g, P) # F 0 G 0 let fG = f*G, gF = g*F, xFG = x*(F*G) # here is the recursion loop forever put(get(fG) + get(gF) + get(xFG), P) The convolution (1) has been hidden completely; all the necessary bookkeeping and storage management is embodied in the topology and contents of the auxiliary streams. Streams fan out to feed multiple consumers. For instance G enters into both f*G and F*G. The topology rami®es as the recursion progresses; more auxiliary streams appear at every stage, making the recursive picture of Figure 1. To write the program, though, we need not think about the topology, for the program is a direct image of the mathematics (2), and the mathematics is simple. Substitution. Substitution, or composition, of power series, de®ned by S = F(G), may be done similarly, using multiplication as a subprocess. The recursive formulation is _ __ _ __ S 0 + x S = F 0 + (G 0 + x G) F(G 0 + x G). Equate coef®cients to ®nd the constant term, _ . S 0 = F 0 + G 0 ( ®rst term of F(G) ). Induction shows that in general S 0 is an in®nite sum. ∞ i S 0 = Σ F i G0 . i = 0 To keep the problem ®nite, we further stipulate that G 0 = 0. Now - 5 - F G ×G 0 ×F 0 _ __ F×G × x + F×G Figure 1. Data ¯ow for multiplication. The outer box represents the process for the tail of F G, equation (2). The similar inner box does not receive the ®rst terms of F or G, and its output does not enter into the ®rst two terms of the product F G. The newsqueak implementation uses a separate process for each box, and one or more processes for each stream splitting. Viewed as a three-dimensional scene receding into the distance, the picture shows a simple repeating structure connected on top by F and G buses. The buses grow, extending one level further with the receipt of each input term. A daisy chain of output connections leads from back to front. _ __ _ S = S 0 + x S = F 0 + x G F(G) , (3) from which pseudocode can be read off. - 6 - # calculate power series S = F(G) put(get(F), S) # F 0 _ let FG = F(G) # the recursion, F(G) let g = get(G) # discard the first term (must be 0) __ _ let GF = G*FG # G F(G) loop forever put(get(GF), S) A subtlety: the G in let FG = F(G) stands for the whole power series, while the G in __ let GF = G*FG stands only for the tail G. In the same way, the meaning of F changes between get(F) and let FG = F(G). Exponentiation. We wish to compute X = e F. From the recursive representation, _ X = e F 0 e x F , (4) we see that X = e F 0 . ( 1 + terms in x). To make the constant term of X rational, we further require that F 0 = 0. Hence X 0 = 1. Unfortunately equation (4) does not lead to an algorithm. Formal substitution yields _ X(x) = 1 . X(x X). (5) _ Since the ®rst term of X(x) depends on the ®rst term of X(x X), we are stuck in an in®nite regress. By induction we may conclude that the ®rst term is an in®nite product of ones, but what are the higher terms? We can ``cheat,'' and substitute F in the known power series for the exponential. It is more satisfying, though, to build from nothing and let the program ``discover'' the exponential for itself.
Recommended publications
  • Introduction to Concurrent Programming
    Introduction to Concurrent Programming Rob Pike Computing Sciences Research Center Bell Labs Lucent Technologies [email protected] February 2, 2000 1 Overview The world runs in parallel, but our usual model of software does not. Programming languages are sequential. This mismatch makes it hard to write systems software that provides the interface between a computer (or user) and the world. Solutions: processes, threads, concurrency, semaphores, spin locks, message-passing. But how do we use these things? Real problem: need an approach to writing concurrent software that guides our design and implementation. We will present our model for designing concurrent software. It’s been used in several languages for over a decade, producing everything from symbolic algebra packages to window systems. This course is not about parallel algorithms or using multiprocessors to run programs faster. It is about using the power of processes and communication to design elegant, responsive, reliable systems. 2 History (Biased towards Systems) Dijkstra: guarded commands, 1976. Hoare: Communicating Sequential Processes (CSP), (paper) 1978. Run multiple communicating guarded command sets in parallel. Hoare: CSP Book, 1985. Addition of channels to the model, rather than directly talking to processes. Cardelli and Pike: Squeak, 1983. Application of CSP model to user interfaces. Pike: Concurrent Window System, (paper) 1988. Application of Squeak approach to systems software. Pike: Newsqueak, 1989. Interpreted language; used to write toy window system. Winterbottom: Alef, 1994. True compiled concurrent language, used to write production systems software. Mullender: Thread library, 1999. Retrofit to C for general usability. 3 Other models exist Our approach is not the only way.
    [Show full text]
  • Introduction to Computer System
    Chapter 1 INTRODUCTION TO COMPUTER SYSTEM 1.0 Objectives 1.1 Introduction –Computer? 1.2 Evolution of Computers 1.3 Classification of Computers 1.4 Applications of Computers 1.5 Advantages and Disadvantages of Computers 1.6 Similarities Difference between computer and Human 1.7 A Computer System 1.8 Components of a Computer System 1.9 Summary 1.10 Check your Progress - Answers 1.11 Questions for Self – Study 1.12 Suggested Readings 1.0 OBJECTIVES After studying this chapter you will be able to: Learn the concept of a system in general and the computer system in specific. Learn and understand how the computers have evolved dramatically within a very short span, from very huge machines of the past, to very compact designs of the present with tremendous advances in technology. Understand the general classifications of computers. Study computer applications. Understand the typical characteristics of computers which are speed, accuracy, efficiency, storage capacity, versatility. Understand limitations of the computer. Discuss the similarities and differences between the human and the computer. Understand the Component of the computer. 1.1 INTRODUCTION- Computer Today, almost all of us in the world make use of computers in one way or the other. It finds applications in various fields of engineering, medicine, commercial, research and others. Not only in these sophisticated areas, but also in our daily lives, computers have become indispensable. They are present everywhere, in all the dev ices that we use daily like cars, games, washing machines, microwaves etc. and in day to day computations like banking, reservations, electronic mails, internet and many more.
    [Show full text]
  • The Strange Birth and Long Life of Unix - IEEE Spectrum Page 1 of 6
    The Strange Birth and Long Life of Unix - IEEE Spectrum Page 1 of 6 COMPUTING / SOFTWARE FEATURE The Strange Birth and Long Life of Unix The classic operating system turns 40, and its progeny abound By WARREN TOOMEY / DECEMBER 2011 They say that when one door closes on you, another opens. People generally offer this bit of wisdom just to lend some solace after a misfortune. But sometimes it's actually true. It certainly was for Ken Thompson and the late Dennis Ritchie, two of the greats of 20th-century information technology, when they created the Unix operating system, now considered one of the most inspiring and influential pieces of software ever written. A door had slammed shut for Thompson and Ritchie in March of 1969, when their employer, the American Telephone & Telegraph Co., withdrew from a collaborative project with the Photo: Alcatel-Lucent Massachusetts Institute of KEY FIGURES: Ken Thompson [seated] types as Dennis Ritchie looks on in 1972, shortly Technology and General Electric after they and their Bell Labs colleagues invented Unix. to create an interactive time- sharing system called Multics, which stood for "Multiplexed Information and Computing Service." Time-sharing, a technique that lets multiple people use a single computer simultaneously, had been invented only a decade earlier. Multics was to combine time-sharing with other technological advances of the era, allowing users to phone a computer from remote terminals and then read e -mail, edit documents, run calculations, and so forth. It was to be a great leap forward from the way computers were mostly being used, with people tediously preparing and submitting batch jobs on punch cards to be run one by one.
    [Show full text]
  • The Strange Birth and Long Life of Unix - IEEE Spectrum
    The Strange Birth and Long Life of Unix - IEEE Spectrum http://spectrum.ieee.org/computing/software/the-strange-birth-and-long-li... COMPUTING / SOFTWARE FEATURE The Strange Birth and Long Life of Unix The classic operating system turns 40, and its progeny abound By WARREN TOOMEY / DECEMBER 2011 They say that when one door closes on you, another opens. People generally offer this bit of wisdom just to lend some solace after a misfortune. But sometimes it's actually true. It certainly was for Ken Thompson and the late Dennis Ritchie, two of the greats of 20th-century information technology, when they created the Unix operating system, now considered one of the most inspiring and influential pieces of software ever written. A door had slammed shut for Thompson and Ritchie in March of 1969, when their employer, the American Telephone & Telegraph Co., withdrew from a collaborative project with the Photo: Alcatel-Lucent Massachusetts Institute of KEY FIGURES: Ken Thompson [seated] types as Dennis Ritchie looks on in 1972, shortly Technology and General Electric after they and their Bell Labs colleagues invented Unix. to create an interactive time-sharing system called Multics, which stood for "Multiplexed Information and Computing Service." Time-sharing, a technique that lets multiple people use a single computer simultaneously, had been invented only a decade earlier. Multics was to combine time-sharing with other technological advances of the era, allowing users to phone a computer from remote terminals and then read e-mail, edit documents, run calculations, and so forth. It was to be a great leap forward from the way computers were mostly being used, with people tediously preparing and submitting batch jobs on punch cards to be run one by one.
    [Show full text]
  • Knowledge Management Enviroments for High Throughput Biology
    Knowledge Management Enviroments for High Throughput Biology Abhey Shah A Thesis submitted for the degree of MPhil Biology Department University of York September 2007 Abstract With the growing complexity and scale of data sets in computational biology and chemoin- formatics, there is a need for novel knowledge processing tools and platforms. This thesis describes a newly developed knowledge processing platform that is different in its emphasis on architecture, flexibility, builtin facilities for datamining and easy cross platform usage. There exist thousands of bioinformatics and chemoinformatics databases, that are stored in many different forms with different access methods, this is a reflection of the range of data structures that make up complex biological and chemical data. Starting from a theoretical ba- sis, FCA (Formal Concept Analysis) an applied branch of lattice theory, is used in this thesis to develop a file system that automatically structures itself by it’s contents. The procedure of extracting concepts from data sets is examined. The system also finds appropriate labels for the discovered concepts by extracting data from ontological databases. A novel method for scaling non-binary data for use with the system is developed. Finally the future of integrative systems biology is discussed in the context of efficiently closed causal systems. Contents 1 Motivations and goals of the thesis 11 1.1 Conceptual frameworks . 11 1.2 Biological foundations . 12 1.2.1 Gene expression data . 13 1.2.2 Ontology . 14 1.3 Knowledge based computational environments . 15 1.3.1 Interfaces . 16 1.3.2 Databases and the character of biological data .
    [Show full text]
  • Uma Introdução À Computação: História E Ciência Editora Ixtlan - São Paulo – 2016
    São Paulo – 2016 Copyright © Autores diversos Projeto gráfico: Editora Ixtlan Revisão: Eduardo Telmo Fonseca Santos Milena Montenegro Pereira Diagramação: Márcia Todeschini Capa: Gabriel Polizello Uma introdução à computação: história e ciência Editora Ixtlan - São Paulo – 2016 ISBN: 978-85-8197-510-8 1.Ciência da computação 2.história CDD 000 Editora Ixtlan - CNPJ 11.042.574/0001-49 - I.E. 456166992117 [email protected] – www.editoraixtlan.com DIREITOS PRESERVADOS – É proibida a reprodução total ou parcial, de qualquer forma ou por qualquer meio. A violação dos direitos de autor (Lei Federal 9.610/1998) é crime previsto no art. 184 do Código Penal. Sumário 1. Início da computação - 3 2. Software - 19 3. Representação da Informação - 27 4. Ciência da Computação é Ciência? - 35 5. Rede de Computadores - 37 6. Exercícios Complementares - 49 7. Bibliografia - 53 Cap´ıtulo 1 Início da computação Para entender os fundamentos da computação atual é preciso olhar para o passado e ver como essa disciplina/área foi fundada e como vem se desenvolvendo até a atualidade [5]. Uma das bases da computação é a Matemática. Desde os primórdios o ser humano percebeu a necessidade de desenvolver algo para auxiliá-lo nas mais diversas operações. Essa necessidade é a responsável pelo surgimento desde as máquinas de calcular até as mais diversas máquinas utilizadas no mundo todo. Em torno de 2600 anos a.C., surgiu um dos primeiros instrumentos manuais voltados para ajudar o homem a calcular quantias numéricas. Esse instrumento usado para representação dos números era o ábaco chinês, que apesar do tempo em que surgiu, ainda é comumente utilizado em certas localidades.
    [Show full text]
  • Universidad Nacional Autónoma De México, Por Permitirme El Honor De Formar Parte De Ella
    Universidad Nacional Autónoma de México FACULTAD DE INGENIERÍA “SISTEMA DE MONITOREO DE SERVIDORES UNIX” T E S I S Que para obtener el Título de: INGENIERO EN COMPUTACIÓN P r e s e n t a: EDGAR CRISTÓBAL RAMÍREZ MIRANDA Director de Tesis: Ing. Noé Cruz Marín Agradecimientos Más que gracias, mi eterno amor a mi padre, mi madre y a mis hermanos a los cuales les debo lo que soy. Papá te admiro y respeto profundamente por la rectitud y honradez con la que te conduces a cada paso de tu vida, por el apoyo y dirección que siempre de ti he recibido, por todas las enseñanzas que desde chico recibí de ti y espero seguir recibiendo. Mamá te amo por todos los años de dedicación que me has dado, por los desvelos, por las lágrimas, por los cariños, por tu inmensa ternura y compasión, por que no encuentro ni encontraré jamás la forma de pagarte todo lo que me has dado, gracias. A mi hermano Emilio por ser mi amigo, por enseñarme a defenderme, por ser mi ídolo, por ensañarme a no desistir nunca hasta alcanzar las metas, porque a tu lado siempre me sentí protegido, por alentarme a ser ingeniero. A mi hermano Joaquín, por que de ti aprendí a ser más sereno a pensar antes de actuar, por siempre protegerme de todos sin importarte nada, por estar conmigo en las buenas y en las malas, por tu tolerancia, por ser mi amigo en los tiempos difíciles. Gracias por aguantarme, soportarme, cuidarme y quererme de la forma en la que lo hacen, estoy y siempre estaré orgulloso de pertenecer a la familia Ramírez Miranda.
    [Show full text]
  • Lezione 11 Processi Sistemi Operativi (9 CFU), Cdl Informatica, A
    Lezione 11 Processi Sistemi Operativi (9 CFU), CdL Informatica, A. A. ! !" ! 1 Dipartimento di Scienze Fisic$e, Informatic$e e %atematic$e Universit& di %odena e Re((io )mi*ia $ttp+"",e-*a-.in(..nimo.it"peop*e"andreo*ini"didattica"sistemi/operativi 1 0.ote of t$e da1 (%editate, (ente, meditate...) “This is the UNIX philosophy: write programs that do one thing and do it well. Write programs to work together. Write programs to handle text streams, because that is a niversal inter"ace.# #o.(*as McI*ro1 (192 -) %atematico, In(e(nere, Programmatore Inventore de**e pipe e de**e utilit1 U3I4 2 SOLUZIONI DEGLI ESERCIZI 3 Esercizio 1 (1 min.) 0.al 5 il PID del processo init (il (estore dei servizi U3I4)6 4 Identi7cazione esatta con pidof Il PID del processo init p.8 essere individ.ato a partire dal s.o nome esatto con i* comando pidof+ pidof init Si dovre--e ottenere il PID 1. 5 Esercizio 2 (2 min.) I processi del des9top :;3OM)< iniziano con la strin(a :(nome<. Come si possono individ.are i processi del des9top in esec.zione6 6 Individuazione tramite pgrep I processi de**=am-iente des9top ;3OME possono essere individ.ati cercando *=espressione re(olare ^gnome.*$ con il comando pgrep+ pgrep ^gnome.*$ Per stampare anc$e i nomi dei comandi si .sa *=opzione -l+ pgrep -l ^gnome.*$ 7 Esercizio 3 (2 min.) Elencate t.tti i processi (e relativi PID) ese(.iti per conto del vostro .sername. Le((ete la pa(ina di man.ale del comando opportuno per capire come fare.
    [Show full text]
  • Praktikum Iz Softverskih Alata U Elektronici
    PRAKTIKUM IZ SOFTVERSKIH ALATA U ELEKTRONICI 2017/2018 Predrag Pejović 31. decembar 2017 Linkovi na primere: I OS I LATEX 1 I LATEX 2 I LATEX 3 I GNU Octave I gnuplot I Maxima I Python 1 I Python 2 I PyLab I SymPy PRAKTIKUM IZ SOFTVERSKIH ALATA U ELEKTRONICI 2017 Lica (i ostali podaci o predmetu): I Predrag Pejović, [email protected], 102 levo, http://tnt.etf.rs/~peja I Strahinja Janković I sajt: http://tnt.etf.rs/~oe4sae 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 I engleski I srpski, kraća verzija I engleski, prezentacija i animacije I srpski, prezentacija i animacije A šta se tačno radi u predmetu, koji programi? 1. uvod (upravo slušate): organizacija nastave + (FS: tehnička, ekonomska i pravna pitanja, kako to uopšte postoji?) (≈ 1 w) 2. operativni sistem (GNU/Linux, Ubuntu), komandna linija (!), shell scripts, . (≈ 1 w) 3. nastavak OS, snalaženje, neki IDE kao ilustracija i vežba, jedan Python i jedan C program . (≈ 1 w) 4.L ATEX i LATEX 2" (≈ 3 w) 5. XCircuit (≈ 1 w) 6. probni kolokvijum . (= 1 w) 7. prvi kolokvijum . 8. GNU Octave (≈ 1 w) 9. gnuplot (≈ (1 + ) w) 10. wxMaxima (≈ 1 w) 11. drugi kolokvijum . 12. Python, IPython, PyLab, SymPy (≈ 3 w) 13.
    [Show full text]
  • Go Web App Example
    Go Web App Example Titaniferous and nonacademic Marcio smoodges his thetas attuned directs decreasingly. Fustiest Lennie seethe, his Pan-Americanism ballasts flitted gramophonically. Flavourless Elwyn dematerializing her reprobates so forbiddingly that Fonsie witness very sartorially. Ide support for web applications possible through gvm is go app and psych and unlock new subcommand go library in one configuration with embedded interface, take in a similar Basic Role-Based HTTP Authorization in fare with Casbin. Tools and web framework for everything there is big goals. Fully managed environment is go app, i is a serverless: verifying user when i personally use the example, decentralized file called marshalling which are both of. Simple Web Application with light Medium. Go apps into go library for example of examples. Go-bootstrap Generates a gait and allowance Go web project. In go apps have a value of. As of December 1st 2019 Buffalo with all related packages require Go Modules and. Authentication in Golang In building web and mobile. Go web examples or go is made against threats to run the example applying the data from the set the search. Why should be restarted for go app. Worth the go because you know that endpoint is welcome page then we created in addition to get started right of. To go apps and examples with fmt library to ensure a very different cloud network algorithms and go such as simple. This example will set users to map support the apps should be capable of examples covers both directories from the performance and application a form and array using firestore implementation.
    [Show full text]
  • Language Technology for Cultural Heritage Data (Latech 2007), Pages 41–48, Prague, Czech Republic, June
    The Workshop Programme 9:30- 9:35 Introduction 9:35-10:00 Penny Labropoulou, Harris Papageorgiou, Byron Georgantopoulos, Dimitra Tsagogeorga, Iason Demiros and Vassilios Antonopoulos: "Integrating Language Technology in a web-enabled Cultural Heritage system" 10:00-10:30 Oto Vale, Arnaldo Candido Junior, Marcelo Muniz, Clarissa Bengtson, Lívia Cucatto, Gladis Almeida, Abner Batista, Maria Cristina Parreira da Silva, Maria Tereza Biderman and Sandra Aluísio: "Building a large dictionary of abbreviations for named entity recognition in Portuguese historical corpora" 11:00-11:30 Eiríkur Rögnvaldsson and Sigrún Helgadóttir: "Morphological tagging of Old Norse texts and its use in studying syntactic variation and change" 11:30-12:00 Lars Borin and Markus Forsberg: "Something Old, Something New: A Computational Morphological Description of Old Swedish" 12:00-12:30 Dag Trygve Truslew Haug and Marius Larsen Jøhndal: "Creating a Parallel Treebank of the Old Indo-European Bible Translations" 12:30-12:55 Elena Grishina: "Non-Standard Russian in Russian National Corpus (RNC)" 12:55-13:20 Dana Dannélls: "Generating tailored texts for museum exhibits" 14:30-15:00 David Bamman and Gregory Crane: "The Logic and Discovery of Textual Allusion" 15:00-15:30 Dimitrios Vogiatzis, Galanis Dimitrios, Vangelis Karkaletsis and Ion Androutsopoulos: "A Conversant Robotic Guide to Art Collections" 15:30-16:00 René Witte, Thomas Gitzinger, Thomas Kappler and Ralf Krestel: "A Semantic Wiki Approach to Cultural Heritage Data Management" 16:30-17:15 Christoph Ringlstetter: "Error Correction in OCR-ed Data"- Invited Talk 17:15-17:30 Closing i Workshop Organisers Caroline Sporleder (Co-Chair), Saarland University, Germany Kiril Ribarov (Co-Chair), Charles University, Czech Republic Antal van den Bosch, Tilburg University, The Netherlands Milena P.
    [Show full text]
  • The History of Unix in the History of Software Haigh Thomas
    The History of Unix in the History of Software Haigh Thomas To cite this version: Haigh Thomas. The History of Unix in the History of Software. Cahiers d’histoire du Cnam, Cnam, 2017, La recherche sur les systèmes : des pivots dans l’histoire de l’informatique – II/II, 7-8 (7-8), pp77-90. hal-03027081 HAL Id: hal-03027081 https://hal.archives-ouvertes.fr/hal-03027081 Submitted on 9 Dec 2020 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. 77 The History of Unix in the History of Software Thomas Haigh University of Wisconsin - Milwaukee & Siegen University. You might wonder what I am doing The “software crisis” and here, at an event on this history of Unix. the 1968 NATO Conference As I have not researched or written about on Software Engineering the history of Unix I had the same question myself. But I have looked at many other The topic of the “software crisis” things around the history of software and has been written about a lot by profes- this morning will be talking about how sional historians, more than anything some of those topics, including the 1968 else in the entire history of software2.
    [Show full text]