Friedrich-Schiller- Universität Jena

Total Page:16

File Type:pdf, Size:1020Kb

Friedrich-Schiller- Universität Jena FRIEDRICH-SCHILLER- UNIVERSITÄT JENA JENAER SCHRIFTEN ZUR MATHEMATIK UND INFORMATIK Eingang: 22.08.2017 Math/Inf/02/2017 Als Manuskript gedruckt Wolfram Amme, Thomas S. Heinze (Hrsg.) Programmiersprachen und Grundlagen der Programmierung 19. Kolloquium, KPS 2017 Weimar, 25.–27. September 2017 Tagungsband Wolfram Amme, Thomas S. Heinze (Hrsg.) Programmiersprachen und Grundlagen der Programmierung 19. Kolloquium, KPS 2017 Weimar, 25.–27. September 2017 Tagungsband Wolfram Amme Friedrich-Schiller-Universität Jena, Institut für Informatik Ernst-Abbe-Platz 2, 07743 Jena [email protected] Thomas S. Heinze Friedrich-Schiller-Universität Jena, Institut für Informatik Ernst-Abbe-Platz 2, 07743 Jena [email protected] Bericht Math/Inf/02/2017 Jenaer Schriften zur Mathematik und Informatik Friedrich-Schiller-Universität Jena Vorwort Das 19. Kolloquium Programmiersprachen und Grundlagen der Programmie- rung (KPS 2017) setzt eine Reihe von Arbeitstagungen fort, die ursprünglich von den Forschungsgruppen der Professoren Friedrich L. Bauer (TU München), Klaus Indermark (RWTH Aachen) und Hans Langmaack (CAU Kiel) ins Leben gerufen wurde. Das erste Kolloquium fand 1980 in Tannenfelde im Naturpark Aukrug in der Nähe von Neumünster in Schleswig-Holstein statt. Die Tagungen finden seitdem in etwa zweijährlichem Rhythmus statt. Aus den ursprünglich drei Arbeitsgruppen sind in der Zwischenzeit weitere Forschungsgruppen in ganz Deutschland und darüber hinaus hervorgegangen. Heute präsentiert sich das Kollo- quium als offenes Forum für alle interessierten deutschsprachigen Wissenschaftler und bietet einen zwanglosen Rahmen zum Austausch neuer Ideen und Ergebnisse aus den Bereichen Entwurf und Implementierung von Programmiersprachen sowie Grundlagen und Methodik des Programmierens. Die inzwischen 37-jährige Tradition wird sichtbar in der Liste der bisherigen Tagungsorte und Veranstalter: 2015 Pörtschach am Wörthersee TU Wien 2013 Lutherstadt Wittenberg Uni Halle-Wittenberg 2011 Schloss Raesfeld Uni Münster 2009 Maria Taferl TU Wien 2007 Timmendorfer Strand Uni Lübeck 2005 Fischbachau LMU München 2004 Freiburg-Munzingen Uni Freiburg 2001 Rurberg in der Eifel RWTH Aachen 1999 Kirchhundem-Heinsberg FernUni Hagen 1997 Avendorf auf Fehmarn Uni Kiel 1995 Alt-Reichenau Uni Passau 1993 Garmisch-Partenkirchen UniBw München 1992 Rothenberge bei Steinfurt Uni Münster 1989 Hirschegg Uni Augsburg 1987 Midlum auf Föhr Uni Kiel 1985 Passau Uni Passau 1982 Altenahr RWTH Aachen 1980 Tannenfelde im Naturpark Aukrug Uni Kiel Das 19. Kolloquium Programmiersprachen und Grundlagen der Program- mierung wird vom Fachbereich Programmiersprachen und Übersetzerbau am Institut für Informatik der Friedrich-Schiller-Universität Jena organisiert. Wir freuen uns darauf, 30 Teilnehmer vom 25. bis 27. September 2017 in Weimar begrüßen zu dürfen, darunter Prof. Dr. Dr. h.c. Hans Langmaack, einen der Gründungsväter der Veranstaltungsreihe, und Prof. Dr. Dr. h.c. Gerhard Goos mit einem Beitrag zur Geschichte der deutschsprachigen Informatik im Bereich Programmiersprachen und Übersetzerbau. Der vorliegende Tagungsband ist als Bericht Math/Inf/02/2017 in den Jenaer Schriften zur Mathematik und Informatik der Fakultät für Mathematik und In- formatik der Friedrich-Schiller-Universität Jena erschienen. Die darin enthaltenen 22 Beiträge zeigen, zum Teil in Form von Kurzzusammenfassungen, die Breite der wissenschaftlichen Forschung zu Programmiersprachen und Grundlagen der Programmierung im deutschsprachigen Raum. Unser ausdrücklicher Dank gilt allen Autoren für ihre Beträge, ohne die dieser Tagungsband natürlich nicht mög- lich wäre. Unser Dank gilt darüber hinaus Cornelia Müsse, der Sekretärin unserer Arbeitsgruppe, sowie den Mitarbeitern des Hauses Dorint Am Goethepark für die gute Unterstützung bei der Planung und Vorbereitung dieses Treffens. Wir freuen uns auf interessante und spannende Vorträge und möchten allen Teilnehmern fruchtbare Diskussionen und vielfältige Anregungen für die eigenen Forschungsarbeiten, das Kennenlernen von Kollegen und das Wiedersehen von guten Bekannten, das Anbahnen neuer und die Vertiefung bestehender Koope- rationen, sowie nicht zuletzt einen angenehmen und hoffentlich stimulierenden Aufenthalt in der Kulturstadt Weimar wünschen. Jena, August 2017 Wolfram Amme Thomas S. Heinze Inhaltsverzeichnis Gerhard Goos Geschichte der deutschsprachigen Informatik Programmiersprachen und Übersetzerbau ..............................................1 Michael Kruse DeLICM – Undoing SSA Transformations for Polly ................ 12 Benedikt Nordhoff Security Through Safety ........................................ 13 Sandra Dylus und Jan Christiansen Modelling Haskell Programs with Free Monads ..................... 18 M. Anton Ertl The Intended Meaning of Undefined Behaviour in C Programs ....... 20 Christian Berg und Wolf Zimmermann Eigenschaften typischer Muster auf geordneten Attributgrammatiken .. 29 Martin Plümicke Structural type inference in Java-like languages .................... 45 Thomas M. Prinz, Linda Gräfe, Jan Plötner und Anja Vetterlein Statische Analysen von Online-Befragungen mit der Programmiersprache liQuid ...................................... 59 Jan C. Dageförde und Herbert Kuchen Muli: Constraint-Programmierung in Java auf symbolischer JVM .... 71 Marc Roßner und Michael Fothe Zur Berechnung der softwaretechnischen Komplexität von einfachen objektorientierten Programmen .................................. 72 Christian Heinlein Flexibler Abbruch von Anweisungen in MOSTflexiPL ............... 80 M. Ali Rostami und H. Martin Bücker An Online Scripting Language for Teaching Combinatorial Scientific Computing .................................................... 83 Ke Liu, Sven Loeffler und Petra Hofstedt Hypertree Decomposition for Constraint Programming in Parallel .... 86 Joachim Giesen, Julien Klaus und Sören Laue Vectorizing Mathematical Expressions ............................. 90 Sebastian Kenter Hyperedge Replacement Grammars for Lock-sensitive Analysis of Parallel Programs .............................................. 96 Thomas S. Heinze, Anders Møller und Fabio Strocco Varianten der modularen Typableitung für Dart .................... 102 Benjamin Saul und Wolf Zimmermann Abstrakte Interpretation auf domänenspezifischen Sprachen für graphbasierte Optimierungsprobleme .............................. 112 Andreas Stadelmeier und Martin Plümicke JavaTX ...................................................... 124 Sven Loeffler, Ke Liu und Petra Hofstedt Transformations of CSPs to Regular CSPs ........................ 127 Marcus Frenkel und Friedrich Steimann Robust Projectional Editing ..................................... 130 Andreas Fuchs Unit Testing von Datenbank-getriebenen Java Enterprise Edition Anwendungen ................................................. 133 Thomas Rupprecht, Jan H. Boockmann, David H. White und Gerald Lüttgen DSI: Automated Detection of Dynamic Data Structures in C Programs and Binary Code ...................................... 134 Geschichte der deutschsprachigen Informatik Programmiersprachen und Übersetzerbau Gerhard Goos Fakultät für Informatik KIT 7. August 2017 Zusammenfassung Zusammenfassung: Kurzdarstellung wichtiger Entdeckungen, Entwicklungen und Erfindungen der deutschsprachigen Informatik im Bereich Programmiersprachen und Übersetzerbau. 1 Der Beginn Den Beginn der modernen Informatik im deutshsprachigen Raum bilden die Unentscheid- barkeitssätze von Kurt Gödel, (Gödel, 1931), also ein Ergebnis der Logik. Den praktischen Beginn der modernen Informatik im deutschsprachigen Raum mar- kieren die Arbeiten von Konrad Zuseab 1936. Dazu zählt seine Entscheidung das Binär- system zu benutzen, vor allem aber die Verwendung der binären Gleitkommadarstellung für die Verarbeitung von Zahlen in der Relaismaschine Z1. Zwar waren halblogarithmi- sche Zahldarstellungen der Formm � 60e bereits den Sumerern vor 4700 Jahren bekannt und die Mathematiker und Naturwissenschaftler benutzen seit langem dezimalm � 10e. e Aber die Zahldarstellung im Binärsystemm � 2 mit normalisiertemm � 1,m 1m2 ... war neu. Auch, daß die führende Zifferm 0 � 1 wie auch im heutigen Standard (IEEE 754, 2008) nicht explizit gespeichert wird,findet sich bereits bei Zuse. Die allgemeine Entwicklung von Rechenanlagen übernahm die Gleitkommaarithmetik erst in den 50er Jahren. Die IBM 704 war 1954 der erste weit verbreitete Rechner mit Gleitkommaope- rationen in Hardware. Zuvor arbeitete man mit Festkommaarithmetik, bei der die Lage des Dezimalkommas mühsam getrennt festgelegt wurde. Beim Umgang mit Geld ist die Art der dezimalen Rundung gesetzlich festgeschrieben und mit binärer Arithmetik nicht einfach nachvollziehbar. Die zweite große Leistung Konrad Zuses im Bereich Programmiersprachen war die Erfindung des Plankalküls 1944/45, der ersten höheren Programmiersprache, (Zuse, 1972; Bauer und Wössner, 1972). Zwar wurde dies erst 1972 veröffentlicht und die zweidi- mensionale Scchreibweise fand bisher keine Nachahmer. Aber es handelt sich um die erste goto-freie Programmiersprache mit Datentypen, die sich anderswo erst im Laufe der60er 1 2 Gerhard Goos b + c ) a : ( ) d × e × f ) ( - ( + g Abbildung 1: Rutishausers Klammergebirge Jahre etablierten. Konrad Zuse war übrigens auch ein begnadeter Maler, wie viele Bilder z. B. aus seiner Zeit in Hopferau/Allgäu am Ende des zweiten Weltkriegs zeigen. [] 2 Die 50er Jahre (Wilkesetal.,1951)hatten 1951 das erste Programmierhandbuchfür das Programmieren in Maschinensprache auf der EDVAC veröffentlicht. Zugleich begann die Suche
Recommended publications
  • Kathleen Fisher Question: Interesting Answer in Algol
    10/21/08 cs242! Lisp! Algol 60! Algol 68! Pascal! Kathleen Fisher! ML! Modula! Reading: “Concepts in Programming Languages” Chapter 5 except 5.4.5! Haskell! “Real World Haskell”, Chapter 0 and Chapter 1! (http://book.realworldhaskell.org/)! Many other languages:! Algol 58, Algol W, Euclid, EL1, Mesa (PARC), …! Thanks to John Mitchell and Simon Peyton Jones for some of these slides. ! Modula-2, Oberon, Modula-3 (DEC)! Basic Language of 1960! Simple imperative language + functions! Successful syntax, BNF -- used by many successors! real procedure average(A,n); statement oriented! real array A; integer n; No array bounds.! begin … end blocks (like C { … } )! begin if … then … else ! real sum; sum := 0; Recursive functions and stack storage allocation! for i = 1 step 1 until n Fewer ad hoc restrictions than Fortran! do General array references: A[ x + B[3] * y ] sum := sum + A[i]; Type discipline was improved by later languages! average := sum/n No “;” here.! Very influential but not widely used in US! end; Tony Hoare: “Here is a language so far ahead of its time that it was not only an improvement on its predecessors Set procedure return value by assignment.! but also on nearly all of its successors.”! Question:! Holes in type discipline! Is x := x equivalent to doing nothing?! Parameter types can be arrays, but! No array bounds! Interesting answer in Algol:! Parameter types can be procedures, but! No argument or return types for procedure parameters! integer procedure p; begin Problems with parameter passing mechanisms!
    [Show full text]
  • Edsger Dijkstra: the Man Who Carried Computer Science on His Shoulders
    INFERENCE / Vol. 5, No. 3 Edsger Dijkstra The Man Who Carried Computer Science on His Shoulders Krzysztof Apt s it turned out, the train I had taken from dsger dijkstra was born in Rotterdam in 1930. Nijmegen to Eindhoven arrived late. To make He described his father, at one time the president matters worse, I was then unable to find the right of the Dutch Chemical Society, as “an excellent Aoffice in the university building. When I eventually arrived Echemist,” and his mother as “a brilliant mathematician for my appointment, I was more than half an hour behind who had no job.”1 In 1948, Dijkstra achieved remarkable schedule. The professor completely ignored my profuse results when he completed secondary school at the famous apologies and proceeded to take a full hour for the meet- Erasmiaans Gymnasium in Rotterdam. His school diploma ing. It was the first time I met Edsger Wybe Dijkstra. shows that he earned the highest possible grade in no less At the time of our meeting in 1975, Dijkstra was 45 than six out of thirteen subjects. He then enrolled at the years old. The most prestigious award in computer sci- University of Leiden to study physics. ence, the ACM Turing Award, had been conferred on In September 1951, Dijkstra’s father suggested he attend him three years earlier. Almost twenty years his junior, I a three-week course on programming in Cambridge. It knew very little about the field—I had only learned what turned out to be an idea with far-reaching consequences. a flowchart was a couple of weeks earlier.
    [Show full text]
  • ICACC Abstracts Book
    The American Ceramic Society 42nd International Conference & Exposition on Advanced Ceramics and Composites ABSTRACT BOOK January 21–26, 2018 Daytona Beach, Florida Introduction This volume contains abstracts for over 900 presentations during the 42nd International Conference & Exposition on Advanced Ceramics & Composites in Daytona Beach, Florida. The abstracts are reproduced as submitted by authors, a format that provides for longer, more detailed descriptions of papers. The American Ceramic Society accepts no responsibility for the content or quality of the abstract content. Abstracts are arranged by day, then by symposium and session title. An Author Index appears at the back of this book. The Meeting Guide contains locations of sessions with times, titles and authors of papers, but not presentation abstracts. How to Use the Abstract Book Refer to the Table of Contents to determine page numbers on which specific session abstracts begin. At the beginning of each session are headings that list session title, location and session chair. Starting times for presentations and paper numbers precede each paper title. The Author Index lists each author and the page number on which their abstract can be found. Copyright © 2018 The American Ceramic Society (www.ceramics.org). All rights reserved. MEETING REGULATIONS The American Ceramic Society is a nonprofit scientific organization that facilitates whether in print, electronic or other media, including The American Ceramic Society’s the exchange of knowledge meetings and publication of papers for future reference. website. By participating in the conference, you grant The American Ceramic Society The Society owns and retains full right to control its publications and its meetings.
    [Show full text]
  • Freier Download BA 104 Als
    BAD 104 ALCHEMY Gone, gone, gone... [31 May 2019] Roky Erickson (The 13th Floor Elevators), 71 [01 Jun 2019] Michel Serres (Philosoph der Parasiten, Gemenge und Gemische), 88 [06 Jun 2019] Dr. John Mac Rebennack (the Night Tripper w/ New Orleans R&B), 77 [22 July 2019] Brigitte Kronauer (Teufelsbrück, Zwei schwarze Jäger), 78 [11 Sep 2019] Daniel Johnston (American singer-songwriter), 58 [30 Sep 2019] Gianni Lenoci (italienischer NowJazz-Pianist), 56 [06 Oct 2019] Ginger Baker (Trommelfeuerkopf bei Cream, Air Force...), 80 [03 Nov 2019] Katagiri Nobukazu (der Drummer von Ryorchestra) Hirnschlag BA's Top Ten 2019 Arashi - Jikan (PNL) d.o.o.r - Songs from a Darkness (poise) Fire! Orchestra - Arrival (Rune Grammofon) Kamilya Jubran & Werner Hasler - Wa (Everest) Land of Kush - Sand Enigma (Constellation) Les Comptes De Korsakoff - Nos Amers (Puzzle) MoE & Pinquins - Vi som elsket kaos (ConradSound) Stephanie Pan - Have Robot Dog, Will Travel (Arteksounds) Andrew Poppy - Hoarse Songs (Field Radio) La STPO - L'Empreinte (The Legacy) (Azafran Media) Die Macht eines Buches, ganz gleich welchen Buches, ... liegt darin, daß es eine offenstehende Tür ist, durch die man abhauen kann. Ich unterstreiche abhauen. Julien Green ...ein Kraut Schmerzenlos, einen Tropfen Todvorbei, einen Löffel Barmherzigkeit. Alles auf des Messers Schneide: Lachen, Weinen, Worte. Ernst Wiechert Honoré de Balzac - Verlorene Illusionen Karl Heinz Bohrer - Granatsplitter Charlotte Brontë - Erzählungen aus Angria Albert Camus - Der Fall ... Das Exil und das Reich Joseph Conrad - Taifun Jean-Pierre Gibrat - Mattéo: August 1936 André Gide - Die Verliese des Vatikan Julien Green - Der Geisterseher; Tagebücher 1996 bis 1998 Ernst Jünger - Eumeswil [nochmal] Daniel Kehlmann - Tyll Esther Kinsky - Hain Sibylle Lewitscharoff - Blumenberg Henry de Montherlant - Das Chaos und die Nacht [noch besser als beim ersten Mal] Walter Muschg - Tragische Literaturgeschichte Raymond Queneau - Mein Freund Pierrot Hugo Pratt - Corto Maltese: Das Goldene Haus von Samarkand ..
    [Show full text]
  • Publiek Domein Laat Bedrijven Te Veel Invullen
    Steven Pemberton, software-uitvinder en bouwer aan het World wide web Publiek domein laat bedrijven te veel invullen De Brit Steven Pemberton is al sinds 1982 verbonden aan het Centrum voor Wiskunde Informatica (CWI) in Amsterdam. Ook hij is een aartsvader van het internet. Specifiek van het World wide web, waarvan hij destijds dicht bij de uitvinding zat. Steven blijft naar de toekomst kijken, nog met dezelfde fraaie idealen. C.V. 19 februari 1953 geboren te Ash, Surrey, Engeland 1972-1975 Programmeur Research Support Unit Sussex University 1975-1977 Research Programmer Manchester University 1977-1982 Docent Computerwetenschap Brighton University 1982-heden Onderzoeker aan het Centrum voor Wiskunde & Informatica (CWI) Verder: 1993–1999 Hoofdredacteur SIGCHI Bulletin en ACM Interactions 1999–2009 Voorzitter HTML en XHTML2 werkgroepen van W3C 2008-heden Voorzitter XForms werkgroep W3C The Internet Guide to Amsterdam Homepage bij het CWI Op Wikipedia 1 Foto’s: Frank Groeliken Tekst: Peter Olsthoorn Steven Pemberton laat zich thuis interviewen, op een typisch Amsterdamse plek aan de Bloemgracht, op de 6e etage van een pakhuis uit 1625 met uitzicht op de Westertoren. Hij schrijft aan een boek, een voortzetting van zijn jaarlijkse lezing in Pakhuis de Zwijger, met in 2011 The Computer as Extended Phenotype (Computers, Genes and You) als titel. Wat is je thema? “De invloed van hard- en software op de maatschappij, vanuit de nieuwe technologie bezien. ‘Fenotype’ gaat over computers als product van onze genen, als een onderdeel van de evolutie. Je kunt de aanwas van succesvolle genen zien als een vorm van leren, of een vorm van geheugen.
    [Show full text]
  • Partition Types
    Partition Types Partition Types The number on the right is in Hexadecimal. 01 DOS 12-bit fat 02 XENIX root 03 XENIX /usr 04 DOS 3.0+ 16-bit FAT (up to 32M) 05 DOS 3.3+ Extended Partition 06 DOS 3.31+ 16-bit FAT (over 32M) 07 OS/2 IFS (e.g., HPFS) 07 Advanced Unix 07 Windows NT NTFS 07 QNX2.x (pre-1988) 08 OS/2 (v1.0-1.3 only) 08 AIX boot partition 08 SplitDrive 08 DELL partition spanning multiple drives 08 Commodore DOS 08 QNX 1.x and 2.x ("qny") 09 AIX data partition 09 Coherent filesystem 09 QNX 1.x and 2.x ("qnz") 0a OS/2 Boot Manager 0a Coherent swap partition 0a OPUS 0b WIN95 OSR2 32-bit FAT 0c WIN95 OSR2 32-bit FAT, LBA-mapped 0e WIN95: DOS 16-bit FAT, LBA-mapped 0f WIN95: Extended partition, LBA-mapped 10 OPUS (?) 11 Hidden DOS 12-bit FAT 12 Compaq config partition 14 Hidden DOS 16-bit FAT <32M 16 Hidden DOS 16-bit FAT >=32M 17 Hidden IFS (e.g., HPFS) 18 AST SmartSleep Partition 19 Unused (Claimed for Willowtech Photon COS) 1b Hidden WIN95 OSR2 32-bit FAT 1c Hidden WIN95 OSR2 32-bit FAT, LBA-mapped 1e Hidden WIN95 16-bit FAT, LBA-mapped 20 Unused 21 Reserved 21 Unused 22 Unused 23 Reserved 24 NEC DOS 3.x 26 Reserved 31 Reserved 32 NOS 33 Reserved 34 Reserved 35 JFS on OS/2 or eCS 36 Reserved 38 THEOS ver 3.2 2gb partition 39 Plan 9 partition 39 THEOS ver 4 spanned partition 3a THEOS ver 4 4gb partition 3b THEOS ver 4 extended partition 3c PartitionMagic recovery partition 3d Hidden NetWare 40 Venix 80286 41 Linux/MINIX (sharing disk with DRDOS) 41 Personal RISC Boot 41 PPC PReP (Power PC Reference Platform) Boot 42 Linux swap (sharing
    [Show full text]
  • An Interview with Tony Hoare ACM 1980 A.M. Turing Award Recipient
    1 An Interview with 2 Tony Hoare 3 ACM 1980 A.M. Turing Award Recipient 4 (Interviewer: Cliff Jones, Newcastle University) 5 At Tony’s home in Cambridge 6 November 24, 2015 7 8 9 10 CJ = Cliff Jones (Interviewer) 11 12 TH = Tony Hoare, 1980 A.M. Turing Award Recipient 13 14 CJ: This is a video interview of Tony Hoare for the ACM Turing Award Winners project. 15 Tony received the award in 1980. My name is Cliff Jones and my aim is to suggest 16 an order that might help the audience understand Tony’s long, varied, and influential 17 career. The date today is November 24th, 2015, and we’re sitting in Tony and Jill’s 18 house in Cambridge, UK. 19 20 Tony, I wonder if we could just start by clarifying your name. Initials ‘C. A. R.’, but 21 always ‘Tony’. 22 23 TH: My original name with which I was baptised was Charles Antony Richard Hoare. 24 And originally my parents called me ‘Charles Antony’, but they abbreviated that 25 quite quickly to ‘Antony’. My family always called me ‘Antony’, but when I went to 26 school, I think I moved informally to ‘Tony’. And I didn’t move officially to ‘Tony’ 27 until I retired and I thought ‘Sir Tony’ would sound better than ‘Sir Antony’. 28 29 CJ: Right. If you agree, I’d like to structure the discussion around the year 1980 when 30 you got the Turing Award. I think it would be useful for the audience to understand 31 just how much you’ve done since that award.
    [Show full text]
  • Literaturverzeichnis
    Literaturverzeichnis ABD+99. Dirk Ansorge, Klaus Bergner, Bernhard Deifel, Nicholas Hawlitzky, Christoph Maier, Barbara Paech, Andreas Rausch, Marc Sihling, Veronika Thurner, and Sascha Vogel: Managing componentware development – software reuse and the V-Modell process. In M. Jarke and A. Oberweis (editors): Advanced Information Systems Engineering, 11th International Conference CAiSE’99, Heidelberg, volume 1626 of Lecture Notes in Computer Science, pages 134–148. Springer, 1999, ISBN 3-540-66157-3. Abr05. Jean-Raymond Abrial: The B-Book. Cambridge University Press, 2005. AJ94. Samson Abramsky and Achim Jung: Domain theory. In Samson Abramsky, Dov M. Gabbay, and Thomas Stephen Edward Maibaum (editors): Handbook of Logic in Computer Science, volume 3, pages 1–168. Clarendon Press, 1994. And02. Peter Bruce Andrews: An introduction to mathematical logic and type theory: To Truth Through Proof, volume 27 of Applied Logic Series. Springer, 2nd edition, July 2002, ISBN 978-94-015-9934-4. AVWW95. Joe Armstrong, Robert Virding, Claes Wikström, and Mike Williams: Concurrent programming in Erlang. Prentice Hall, 2nd edition, 1995. Bac78. Ralph-Johan Back: On the correctness of refinement steps in program develop- ment. PhD thesis, Åbo Akademi, Department of Computer Science, Helsinki, Finland, 1978. Report A–1978–4. Bas83. Günter Baszenski: Algol 68 Preludes for Arithmetic in Z and Q. Bochum, 2nd edition, September 1983. Bau75. Friedrich Ludwig Bauer: Software engineering. In Friedrich Ludwig Bauer (editor): Advanced Course: Software Engineering, Reprint of the First Edition (February 21 – March 3, 1972), volume 30 of Lecture Notes in Computer Science, pages 522–545. Springer, 1975. Bau82. Rüdeger Baumann: Programmieren mit PASCAL. Chip-Wissen. Vogel-Verlag, Würzburg, 1982.
    [Show full text]
  • Final Version
    Centrum Wiskunde & Informatica Software Engineering Software ENgineering A comparison between the ALGOL 60 implementations on the Electrologica X1 and the Electrologica X8 F.E.J. Kruseman Aretz REPORT SEN-E0801 SEPTEMBER 2008 Centrum Wiskunde & Informatica (CWI) is the national research institute for Mathematics and Computer Science. It is sponsored by the Netherlands Organisation for Scientific Research (NWO). CWI is a founding member of ERCIM, the European Research Consortium for Informatics and Mathematics. CWI's research has a theme-oriented structure and is grouped into four clusters. Listed below are the names of the clusters and in parentheses their acronyms. Probability, Networks and Algorithms (PNA) Software Engineering (SEN) Modelling, Analysis and Simulation (MAS) Information Systems (INS) Copyright © 2008, Centrum Wiskunde & Informatica P.O. Box 94079, 1090 GB Amsterdam (NL) Kruislaan 413, 1098 SJ Amsterdam (NL) Telephone +31 20 592 9333 Telefax +31 20 592 4199 ISSN 1386-369X A comparison between the ALGOL 60 implementations on the Electrologica X1 and the Electrologica X8 ABSTRACT We compare two ALGOL 60 implementations, both developed at the Mathematical Centre in Amsterdam, forerunner of the CWI. They were designed for Electrologica hardware, the EL X1 from 1958 and the EL X8 from 1965. The X1 did not support ALGOL 60 implementation at all. Its ALGOl 60 system was designed by Dijkstra and Zonneveld and completed in 1960. Although developed as an academic exercise it soon was heavily used and appreciated. The X8, successor of the X1 and (almost) upwards compatible to it, had a number of extensions chosen specifically to support ALGOL 60 implementation. The ALGOL 60 system, developed by Nederkoorn and Kruseman Aretz, was completed even before the first delivery of an X8.
    [Show full text]
  • Adriaan Van Wijngaarden and the Start of Computer Science in the Netherlands
    Adriaan van Wijngaarden and the start of computer science in the Netherlands Jos Baeten, Centrum Wiskunde & Informatica and Institute for Logic, Language and Computation, UvA Adriaan van Wijngaarden and the start of computer science in the Netherlands Jos Baeten, Centrum Wiskunde & Informatica and Institute for Logic, Language and Computation, UvA Adriaan van Wijngaarden 2 November 1916 – 7 February 1987 Graduated TH Delft Mechanical Engineering 1939 PhD TH Delft on calculations for a ship propellor 1945 London February 1946: look at mathematical machines Stichting Mathematisch Centrum 11 February 1946 Mathematics as a service Pure mathematics department Statistics department Computing department (1947) Applied mathematics department (1948) 1 January 1947 head of computing department 1 January 1947 head of computing department ‘Girls of Van Wijngaarden’ 1947: in the UK, also USA Met Turing, Von Neumann, others Plantage Muidergracht 6 Automatische Relais Rekenmachine Amsterdam Tweede Boerhaavestraat 49 ARRA II N.V. Elektrologica, 1957 Algol 60 • In 1955, committee started on unified notation of computer programs • Friedrich Bauer, 1958, International Algebraic Language • 1959, Algorithmic Language, Van Wijngaarden and Dijkstra join • 1960 editor of Algol 60 report • Separation of hardware and software Algol 68 IFIP Working Group 2.1 taking the lead Starts formal language theory (Chomsky’s universal grammar) Van Wijngaarden grammars Reasoning about language and programs Some achievements 1958 started Nederlands RekenMachine Genootschap
    [Show full text]
  • Scaling Functional Synthesis and Repair
    Scaling Functional Synthesis and Repair Thèse N° 8716 Présentée le 11 janvier 2019 à la Faculté informatique et communications Laboratoire d’analyse et de raisonnement automatisés Programme doctoral en informatique et communications pour l’obtention du grade de Docteur ès Sciences par EMMANOUIL KOUKOUTOS Acceptée sur proposition du jury Prof. C. Koch, président du jury Prof. V. Kuncak, directeur de thèse Prof. S. Khurshid, rapporteur Prof. D. Marinov, rapporteur Prof. M. Odersky, rapporteur 2019 Acknowledgements First and foremost, I would like to thank my advisor Viktor Kuncak, for accepting me into his lab, and generously providing his guidance, knowledge, encouragement and support during my PhD studies. This thesis would not have been possible without him. Second, I would like to thank my thesis committee members Christoph Koch, Martin Odersky, Darko Marinov and Sarfraz Khurshid, for taking the time to evaluate my thesis, and for their valuable and extensive comments on it, which helped it improve greatly to its current form. Third, I would like to thank my colleagues Etienne Kneuss, Mukund Ragothaman, Ravishadran Kandhadai Madhavan, Régis Blanc, Mikael Mayer, Nicolas Voirol, Romain Edelmann, Eva Darulova, Andreas Pavlogiannis, Georg Schmid, Jad Hamsa, Romain Ruetschi, and Sarah Sallinger, for our collaboration, exchange of ideas, and the welcoming and creative atmosphere they maintained in the lab. A special thanks goes to Etienne for our great collaboration, and his guidance and patience when he was helping me acclimate during my first months in the lab. Also, I would like to thank Fabien Salvi, Yvette Gallay and Sylvie Jankow, for helping all of us to work unobstructed with their technical and administrative support.
    [Show full text]
  • Microkernels: Mach and L4
    Microkernels: Mach and L4 Presented by Jason Wu With content borrowed from Dan Williams (2009) and Hakim Weatherspoon (2008) Outline • Introduction to Kernels • 1st Generation Microkernels – Mach • 2nd Generation Microkernels – L4 • Conclusions Introduction to Kernels • Different Types of Kernel Designs – Monolithic kernel – Microkernel – Hybrid Kernel – Exokernel – Virtual Machines? Monolithic Kernels • All OS services operate in kernel space • Good performance • Disadvantages – Dependencies between system component – Complex & huge (millions(!) of lines of code) – Larger size makes it hard to maintain • E.g. Multics, Unix, BSD, Linux Microkernels • Minimalist approach – IPC, virtual memory, thread scheduling • Put the rest into user space – Device drivers, networking, file system, user interface • More stable with less services in kernel space • Disadvantages – Lots of system calls and context switches • E.g. Mach, L4, AmigaOS, Minix, K42 Monolithic Kernels VS Microkernels Hybrid Kernels • Combine the best of both worlds – Speed and simple design of a monolithic kernel – Modularity and stability of a microkernel • Still similar to a monolithic kernel – Disadvantages still apply here • E.g. Windows NT, NetWare, BeOS Exokernels • Follows end-to-end principle – Extremely minimal – Fewest hardware abstractions as possible – Just allocates physical resources to apps • Disadvantages – More work for application developers • E.g. Nemesis, ExOS • Next Thursday! The Microkernel Debate • How big should it be? • Big debate during the 1980’s Summary:
    [Show full text]