Introduction to the Literature on Programming Language Design Gary T
Total Page:16
File Type:pdf, Size:1020Kb
Load more
Recommended publications
-
Typology of Programming Languages E Early Languages E
Typology of programming languages e Early Languages E Typology of programming languages Early Languages 1 / 71 The Tower of Babel Typology of programming languages Early Languages 2 / 71 Table of Contents 1 Fortran 2 ALGOL 3 COBOL 4 The second wave 5 The finale Typology of programming languages Early Languages 3 / 71 IBM Mathematical Formula Translator system Fortran I, 1954-1956, IBM 704, a team led by John Backus. Typology of programming languages Early Languages 4 / 71 IBM 704 (1956) Typology of programming languages Early Languages 5 / 71 IBM Mathematical Formula Translator system The main goal is user satisfaction (economical interest) rather than academic. Compiled language. a single data structure : arrays comments arithmetics expressions DO loops subprograms and functions I/O machine independence Typology of programming languages Early Languages 6 / 71 FORTRAN’s success Because: programmers productivity easy to learn by IBM the audience was mainly scientific simplifications (e.g., I/O) Typology of programming languages Early Languages 7 / 71 FORTRAN I C FIND THE MEAN OF N NUMBERS AND THE NUMBER OF C VALUES GREATER THAN IT DIMENSION A(99) REAL MEAN READ(1,5)N 5 FORMAT(I2) READ(1,10)(A(I),I=1,N) 10 FORMAT(6F10.5) SUM=0.0 DO 15 I=1,N 15 SUM=SUM+A(I) MEAN=SUM/FLOAT(N) NUMBER=0 DO 20 I=1,N IF (A(I) .LE. MEAN) GOTO 20 NUMBER=NUMBER+1 20 CONTINUE WRITE (2,25) MEAN,NUMBER 25 FORMAT(11H MEAN = ,F10.5,5X,21H NUMBER SUP = ,I5) STOP TypologyEND of programming languages Early Languages 8 / 71 Fortran on Cards Typology of programming languages Early Languages 9 / 71 Fortrans Typology of programming languages Early Languages 10 / 71 Table of Contents 1 Fortran 2 ALGOL 3 COBOL 4 The second wave 5 The finale Typology of programming languages Early Languages 11 / 71 ALGOL, Demon Star, Beta Persei, 26 Persei Typology of programming languages Early Languages 12 / 71 ALGOL 58 Originally, IAL, International Algebraic Language. -
Software Tools: a Building Block Approach
SOFTWARE TOOLS: A BUILDING BLOCK APPROACH NBS Special Publication 500-14 U.S. DEPARTMENT OF COMMERCE National Bureau of Standards ] NATIONAL BUREAU OF STANDARDS The National Bureau of Standards^ was established by an act of Congress March 3, 1901. The Bureau's overall goal is to strengthen and advance the Nation's science and technology and facilitate their effective application for public benefit. To this end, the Bureau conducts research and provides: (1) a basis for the Nation's physical measurement system, (2) scientific and technological services for industry and government, (3) a technical basis for equity in trade, and (4) technical services to pro- mote public safety. The Bureau consists of the Institute for Basic Standards, the Institute for Materials Research, the Institute for Applied Technology, the Institute for Computer Sciences and Technology, the Office for Information Programs, and the ! Office of Experimental Technology Incentives Program. THE INSTITUTE FOR BASIC STANDARDS provides the central basis within the United States of a complete and consist- ent system of physical measurement; coordinates that system with measurement systems of other nations; and furnishes essen- tial services leading to accurate and uniform physical measurements throughout the Nation's scientific community, industry, and commerce. The Institute consists of the Office of Measurement Services, and the following center and divisions: Applied Mathematics — Electricity — Mechanics — Heat — Optical Physics — Center for Radiation Research — Lab- oratory Astrophysics^ — Cryogenics^ — Electromagnetics^ — Time and Frequency*. THE INSTITUTE FOR MATERIALS RESEARCH conducts materials research leading to improved methods of measure- ment, standards, and data on the properties of well-characterized materials needed by industry, commerce, educational insti- tutions, and Government; provides advisory and research services to other Government agencies; and develops, produces, and distributes standard reference materials. -
A Networked Robotic System and Its Use in an Oil Spill Monitoring Exercise
A Networked Robotic System and its Use in an Oil Spill Monitoring Exercise El´oiPereira∗† Co-authors: Pedro Silvay, Clemens Krainerz, Christoph Kirschz, Jos´eMorgadoy, and Raja Sengupta∗ cpcc.berkeley.edu, eloipereira.com [email protected] Swarm at the Edge of the Could - ESWeek'13, Montreal, Canada September 29, 2013 ∗ - Systems Engineering, UC Berkeley y - Research Center, Portuguese Air Force Academy z - Computer Science Dept., University of Salzburg Programming the Ubiquitous World • In networked mobile systems (e.g. teams of robots, smartphones, etc.) the location and connectivity of \machines" may vary during the execution of its \programs" (computation specifications) • We investigate models for bridging \programs" and \machines" with dynamic structure (location and connectivity) • BigActors [PKSBdS13, PPKS13, PS13] are actors [Agh86] hosted by entities of the physical structure denoted as bigraph nodes [Mil09] E. Pereira, C. M. Kirsch, R. Sengupta, and J. B. de Sousa, \Bigactors - A Model for Structure-aware Computation," in ACM/IEEE 4th International Conference on Cyber-Physical Systems, 2013, pp. 199-208. Case study: Oil spill monitoring scenario • \Bilge dumping" is an environmental problem of great relevance for countries with large area of jurisdictional waters • EC created the European Maritime Safety Agency to \...prevent and respond to pollution by ships within the EU" • How to use networked robotics to monitor and take evidences of \bilge dumping" Figure: Portuguese Jurisdiction waters and evidences of \Bilge dumping". -
Simula Mother Tongue for a Generation of Nordic Programmers
Simula! Mother Tongue! for a Generation of! Nordic Programmers! Yngve Sundblad HCI, CSC, KTH! ! KTH - CSC (School of Computer Science and Communication) Yngve Sundblad – Simula OctoberYngve 2010Sundblad! Inspired by Ole-Johan Dahl, 1931-2002, and Kristen Nygaard, 1926-2002" “From the cold waters of Norway comes Object-Oriented Programming” " (first line in Bertrand Meyer#s widely used text book Object Oriented Software Construction) ! ! KTH - CSC (School of Computer Science and Communication) Yngve Sundblad – Simula OctoberYngve 2010Sundblad! Simula concepts 1967" •# Class of similar Objects (in Simula declaration of CLASS with data and actions)! •# Objects created as Instances of a Class (in Simula NEW object of class)! •# Data attributes of a class (in Simula type declared as parameters or internal)! •# Method attributes are patterns of action (PROCEDURE)! •# Message passing, calls of methods (in Simula dot-notation)! •# Subclasses that inherit from superclasses! •# Polymorphism with several subclasses to a superclass! •# Co-routines (in Simula Detach – Resume)! •# Encapsulation of data supporting abstractions! ! KTH - CSC (School of Computer Science and Communication) Yngve Sundblad – Simula OctoberYngve 2010Sundblad! Simula example BEGIN! REF(taxi) t;" CLASS taxi(n); INTEGER n;! BEGIN ! INTEGER pax;" PROCEDURE book;" IF pax<n THEN pax:=pax+1;! pax:=n;" END of taxi;! t:-NEW taxi(5);" t.book; t.book;" print(t.pax)" END! Output: 7 ! ! KTH - CSC (School of Computer Science and Communication) Yngve Sundblad – Simula OctoberYngve 2010Sundblad! -
Internet Engineering Jan Nikodem, Ph.D. Software Engineering
Internet Engineering Jan Nikodem, Ph.D. Software Engineering Theengineering paradigm Software Engineering Lecture 3 The term "software crisis" was coined at the first NATO Software Engineering Conference in 1968 by: Friedrich. L. Bauer Nationality;German, mathematician, theoretical physicist, Technical University of Munich Friedrich L. Bauer 1924 3/24 The term "software crisis" was coined at the first NATO Software Engineering Conference in 1968 by: Peter Naur Nationality;Dutch, astronomer, Regnecentralen, Niels Bohr Institute, Technical University of Denmark, University of Copenhagen. Peter Naur 1928 4/24 Whatshouldbe ourresponse to software crisis which provided with too little quality, too late deliver and over budget? Nationality;Dutch, astronomer, Regnecentralen, Niels Bohr Institute, Technical University of Denmark, University of Copenhagen. Peter Naur 1928 5/24 Software should following an engineering paradigm NATO conference in Garmisch-Partenkirchen, 1968 Peter Naur 1928 6/24 The hope is that the progress in hardware will cure all software ills. The Oberon System User Guide and Programmer's Manual. ACM Press Nationality;Swiss, electrical engineer, computer scientist ETH Zürich, IBM Zürich Research Laboratory, Institute for Media Communications Martin Reiser 7/24 However, a critical observer may notethat software manages to outgrow hardware in size and sluggishness. The Oberon System User Guide and Programmer's Manual. ACM Press Nationality;Swiss, electrical engineer, computer scientist ETH Zürich, IBM Zürich Research Laboratory, Institute for Media Communications Martin Reiser 8/24 Wirth's computing adage Software is getting slower more rapidly than hardware becomes faster. Nationality;Swiss, electronic engineer, computer scientist ETH Zürich, University of California, Berkeley, Stanford University University of Zurich. Xerox PARC. -
Edsger W. Dijkstra: a Commemoration
Edsger W. Dijkstra: a Commemoration Krzysztof R. Apt1 and Tony Hoare2 (editors) 1 CWI, Amsterdam, The Netherlands and MIMUW, University of Warsaw, Poland 2 Department of Computer Science and Technology, University of Cambridge and Microsoft Research Ltd, Cambridge, UK Abstract This article is a multiauthored portrait of Edsger Wybe Dijkstra that consists of testimo- nials written by several friends, colleagues, and students of his. It provides unique insights into his personality, working style and habits, and his influence on other computer scientists, as a researcher, teacher, and mentor. Contents Preface 3 Tony Hoare 4 Donald Knuth 9 Christian Lengauer 11 K. Mani Chandy 13 Eric C.R. Hehner 15 Mark Scheevel 17 Krzysztof R. Apt 18 arXiv:2104.03392v1 [cs.GL] 7 Apr 2021 Niklaus Wirth 20 Lex Bijlsma 23 Manfred Broy 24 David Gries 26 Ted Herman 28 Alain J. Martin 29 J Strother Moore 31 Vladimir Lifschitz 33 Wim H. Hesselink 34 1 Hamilton Richards 36 Ken Calvert 38 David Naumann 40 David Turner 42 J.R. Rao 44 Jayadev Misra 47 Rajeev Joshi 50 Maarten van Emden 52 Two Tuesday Afternoon Clubs 54 2 Preface Edsger Dijkstra was perhaps the best known, and certainly the most discussed, computer scientist of the seventies and eighties. We both knew Dijkstra |though each of us in different ways| and we both were aware that his influence on computer science was not limited to his pioneering software projects and research articles. He interacted with his colleagues by way of numerous discussions, extensive letter correspondence, and hundreds of so-called EWD reports that he used to send to a select group of researchers. -
A Common Programming Language for the Depart Final Ment of Defenses-Background and Technical January -December 1975 1 Requirements «
Approved for public release; distribution unlimited I 1 PAPER P-1191 A COMMON PROGRAMMING LANGUAGE 1 FOR THE DEPARTMENT OF DEFENSE - - I BACKGROUND AND TECHNICAL REQUIREMENTS I I D. A. Fisher June 1976 I 1 I I I I INSTITUTE FOR DEFENSE ANALYSES I SCIENCE AND TECHNOLOGY DIVISION I I IDA Log No. HQ 76-18215 I Cop-)*- > . -JJ . of 155. cop I ess Approved for public release; distribution unlimited I I I I The work reported in this document was conducted under contract DAHC15 73 C 0200 for the Department of Defense. The publication I of this IDA Paper does not indicate endorsement by the Department of Defense, nor should the contents be construed as reflecting the official position of that agency. I I I I This document has been approved for public release, distribution is unlimited. I I 1 1 1 I I I Copyright IDA/Scanned June 2007 I 1 Approved for public release; distribution unlimited UNCLASSIFIED - ©; ; ; : ;" -; .©, . 1 SECURITY CLASSIFICATION OF THIS PAGE CWnen DM* Entered; READ INSTRUCTIONS REPORT DOCUMENTATION PAGE BEFORE COMPLETING FORM ). RECIPIENT©S CATALOG NUMBER 1 Paper P-J.191. 4. TITLE fend Subtitle.) 5. TYPE Of REPORT e PERIOD COVERED A Common Programming Language for the Depart Final ment of Defenses-Background and Technical January -December 1975 1 Requirements «. PERFORMING ORG. REPORT NUMBER P-1191 I. CONTRACT OR GRANT NUMBERflJ 1 DAHC15 73 C 0200 D.A, Fisher 10. PROGRAM ELEMENT. PROJECT TASK 1 INSTITUTE FOR DEFENSE ANALYSES AREA * WORK UNIT NUMBERS 400 Army-Navy Drive Task T-36 Arlington. Virginia 22202 11. -
Oral History Interview with John Brackett and Doug Ross
An Interview with JOHN BRACKETT AND DOUG ROSS OH 392 Conducted by Mike Mahoney on 7 May 2004 Needham, Massachusetts Charles Babbage Institute Center for the History of Information Processing University of Minnesota, Minneapolis Copyright, Charles Babbage Institute John Brackett and Doug Ross Interview 7 May 2004 Oral History 392 Abstract Doug Ross and John Brackett focus on the background of SofTech and then its entry into the microcomputer software marketplace. They describe their original contact with the University of California at San Diego (UCSD) and licensing the p-System which had been developed there. They discuss the effort required to bring the program to production status and the difficulties in marketing it to the sets of customers. They talk about the transition from 8 bit to 16 bit machines and how that affected their market opportunities. They conclude with a review of the negotiations with IBM and their failure to get p-System to become a primary operating environment. That, and the high performance of Lotus 1-2-3, brought about the demise of the p- System. [John Brackett requested that the following information from Wikipedia, the free encyclopedia, be provided as an introduction to this oral history interview: “UCSD p-System or UCSD Pascal System was a portable, highly machine independent operating system based upon UCSD Pascal. The University of California, San Diego Institute for Information Systems developed it in 1978 to provide students with a common operating system that could run on any of the then available microcomputers as well as campus DEC PDP-11 minicomputers. UCSD p- System was one of three operating systems (along with PC-DOS and CP/M-86) that IBM offered for its original IBM PC. -
Type Extensions, Wirth 1988
Type Extensions N. WIRTH lnstitut fijr Informatik, ETH, Zurich Software systems represent a hierarchy of modules. Client modules contain sets of procedures that extend the capabilities of imported modules. This concept of extension is here applied to data types. Extended types are related to their ancestor in terms of a hierarchy. Variables of an extended type are compatible with variables of the ancestor type. This scheme is expressed by three language constructs only: the declaration of extended record types, the type test, and the type guard. The facility of extended types, which closely resembles the class concept, is defined in rigorous and concise terms, and an efficient implementation is presented. Categories and Subject Descriptors: D.3.3 [Programming Languages]: Language Constructs-data types and structures; modules, packuges; D.3.4 [Programming Languages]: Processors-code generation General Terms: Languages Additional Key Words and Phrases: Extensible data type, Modula-2 1. INTRODUCTION Modern software development tools are designed for the construction of exten- sible systems. Extensibility is the cornerstone for system development, for it allows us to build new systems on the basis of existing ones and to avoid starting each new endeavor from scratch. In fact, programming is extending a given system. The traditional facility that mirrors this concept is the module-also called package-which is a collection of data definitions and procedures that can be linked to other modules by an appropriate linker or loader. Modern large systems consist, without exception, of entire hierarchies of such modules. This notion has been adopted successfully by modern programming languages, such as Mesa [4], Modula-2 [8], and Ada [5], with the crucial property that consistency of interfaces be verified upon compilation of the source text instead of by the linking process. -
The Space and Motion of Communicating Agents
The space and motion of communicating agents Robin Milner December 1, 2008 ii to my family: Lucy, Barney, Chloe,¨ and in memory of Gabriel iv Contents Prologue vii Part I : Space 1 1 The idea of bigraphs 3 2 Defining bigraphs 15 2.1 Bigraphsandtheirassembly . 15 2.2 Mathematicalframework . 19 2.3 Bigraphicalcategories . 24 3 Algebra for bigraphs 27 3.1 Elementarybigraphsandnormalforms. 27 3.2 Derivedoperations ........................... 31 4 Relative and minimal bounds 37 5 Bigraphical structure 43 5.1 RPOsforbigraphs............................ 43 5.2 IPOsinbigraphs ............................ 48 5.3 AbstractbigraphslackRPOs . 53 6 Sorting 55 6.1 PlacesortingandCCS ......................... 55 6.2 Linksorting,arithmeticnetsandPetrinets . ..... 60 6.3 Theimpactofsorting .......................... 64 Part II : Motion 66 7 Reactions and transitions 67 7.1 Reactivesystems ............................ 68 7.2 Transitionsystems ........................... 71 7.3 Subtransitionsystems .. .... ... .... .... .... .... 76 v vi CONTENTS 7.4 Abstracttransitionsystems . 77 8 Bigraphical reactive systems 81 8.1 DynamicsforaBRS .......................... 82 8.2 DynamicsforaniceBRS.... ... .... .... .... ... .. 87 9 Behaviour in link graphs 93 9.1 Arithmeticnets ............................. 93 9.2 Condition-eventnets .. .... ... .... .... .... ... .. 95 10 Behavioural theory for CCS 103 10.1 SyntaxandreactionsforCCSinbigraphs . 103 10.2 TransitionsforCCSinbigraphs . 107 Part III : Development 113 11 Further topics 115 11.1Tracking................................ -
The Origins of Structural Operational Semantics
The Origins of Structural Operational Semantics Gordon D. Plotkin Laboratory for Foundations of Computer Science, School of Informatics, University of Edinburgh, King’s Buildings, Edinburgh EH9 3JZ, Scotland I am delighted to see my Aarhus notes [59] on SOS, Structural Operational Semantics, published as part of this special issue. The notes already contain some historical remarks, but the reader may be interested to know more of the personal intellectual context in which they arose. I must straightaway admit that at this distance in time I do not claim total accuracy or completeness: what I write should rather be considered as a reconstruction, based on (possibly faulty) memory, papers, old notes and consultations with colleagues. As a postgraduate I learnt the untyped λ-calculus from Rod Burstall. I was further deeply impressed by the work of Peter Landin on the semantics of pro- gramming languages [34–37] which includes his abstract SECD machine. One should also single out John McCarthy’s contributions [45–48], which include his 1962 introduction of abstract syntax, an essential tool, then and since, for all approaches to the semantics of programming languages. The IBM Vienna school [42, 41] were interested in specifying real programming languages, and, in particular, worked on an abstract interpreting machine for PL/I using VDL, their Vienna Definition Language; they were influenced by the ideas of McCarthy, Landin and Elgot [18]. I remember attending a seminar at Edinburgh where the intricacies of their PL/I abstract machine were explained. The states of these machines are tuples of various kinds of complex trees and there is also a stack of environments; the transition rules involve much tree traversal to access syntactical control points, handle jumps, and to manage concurrency. -
Curriculum Vitae Thomas A
Curriculum Vitae Thomas A. Henzinger February 6, 2021 Address IST Austria (Institute of Science and Technology Austria) Phone: +43 2243 9000 1033 Am Campus 1 Fax: +43 2243 9000 2000 A-3400 Klosterneuburg Email: [email protected] Austria Web: pub.ist.ac.at/~tah Research Mathematical logic, automata and game theory, models of computation. Analysis of reactive, stochastic, real-time, and hybrid systems. Formal software and hardware verification, especially model checking. Design and implementation of concurrent and embedded software. Executable modeling of biological systems. Education September 1991 Ph.D., Computer Science Stanford University July 1987 Dipl.-Ing., Computer Science Kepler University, Linz August 1986 M.S., Computer and Information Sciences University of Delaware Employment September 2009 President IST Austria April 2004 to Adjunct Professor, University of California, June 2011 Electrical Engineering and Computer Sciences Berkeley April 2004 to Professor, EPFL August 2009 Computer and Communication Sciences January 1999 to Director Max-Planck Institute March 2000 for Computer Science, Saarbr¨ucken July 1998 to Professor, University of California, March 2004 Electrical Engineering and Computer Sciences Berkeley July 1997 to Associate Professor, University of California, June 1998 Electrical Engineering and Computer Sciences Berkeley January 1996 to Assistant Professor, University of California, June 1997 Electrical Engineering and Computer Sciences Berkeley January 1992 to Assistant Professor, Cornell University December 1996 Computer Science October 1991 to Postdoctoral Scientist, Universit´eJoseph Fourier, December 1991 IMAG Laboratory Grenoble 1 Honors Member, US National Academy of Sciences, 2020. Member, American Academy of Arts and Sciences, 2020. ESWEEK (Embedded Systems Week) Test-of-Time Award, 2020. LICS (Logic in Computer Science) Test-of-Time Award, 2020.