Modula-2 and Oberon

Total Page:16

File Type:pdf, Size:1020Kb

Modula-2 and Oberon Modula-2 and Oberon Niklaus Wirth ETH Zurich [email protected] Abstract scientific circles and COBOL in business data processing. IBM’s PL/I was slowly gaining acceptance. It tried to unite the disparate This is an account of the development of the languages Modula-2 worlds of scientific and business applications. Some further, and Oberon. Together with their ancestors ALGOL 60 and Pascal "esoteric" languages were popular in academia, for example Lisp they form a family called Algol-like languages. Pascal (1970) and its extensions, which dominated the AI culture with its list- reflected the ideas of structured programming, Modula-2 (1979) processing facilities. added those of modular system design, and Oberon (1988) catered However, none of the available languages was truly suitable to the object-oriented style. Thus they mirror the essential for handling the ever-growing complexity of computing tasks. programming paradigms of the past decades. Here the major FORTRAN and COBOL lacked a pervasive concept of data types language properties are outlined, followed by an account of the like that of Pascal; and Pascal lacked a facility for piecewise respective implementation efforts. The conditions and the compilation, and thus for program libraries. PL/1 offered environments in which the languages were created are elucidated. everything to a certain degree. Therefore it was bulky and hard to We point out that simplicity of design was the most essential master. The fact remained that none of the available languages guiding principle. Clarity of concepts, economy of features, was truly satisfactory. efficiency and reliability of implementations were its I was fortunate to be able to spend a sabbatical year at the new consequences. Xerox Research Laboratory in Palo Alto during this time. There, Categories and Subject Descriptors D.3.3 [Programming on the personal workstation Alto, I encountered the language Languages]: Language Constructs and Features – abstract data Mesa, which appeared to be the appropriate language for types, classes and objects, modules. programming large systems. It stemmed from Pascal [2, 38], and hence had adopted a strictly static typing scheme. But one was General Terms Design, Reliability, Languages. also allowed to develop parts of a system – called modules – independently, and to bind them through the linking loader into a 1. Background consistent whole. This alone was nothing new. It was new, however, for strongly typed languages, guaranteeing type In the middle of the 1970s, the computing scene evolved around consistency between the linked modules. Therefore, compilation large computers. Programmers predominantly used time-shared of modules was not called independent, but separate compilation. "main frames" remotely via low-bandwidth (1200 b/s) lines and We will return to this topic later. simple ("dumb") terminals displaying 24 lines of up to 80 As Pascal had been Mesa’s ancestor, Mesa served as Modula- characters. Accordingly, interactivity was severely limited, and 2’s guideline. Mesa had not only adopted Pascal’s style and program development and testing was a time-consuming process. concepts, but also most of its facilities, to which were added Yet, the power of computers – albeit tiny in comparison with many more, as they all seemed either necessary or convenient for modern devices – had grown considerably over the previous system programming. The result was a large language, difficult to decade. Therefore the complexity of tasks, and thus that of fully master, and more so to implement. Making a virtue out of programs, had grown likewise. The notion of parallel processes necessity, I simplified Mesa, retaining what seemed essential and had become a concern and made programming even more preserving the appearance of Pascal. The guiding idea was to difficult. The limit of our intellectual capability seemed to be construct a genuine successor of Pascal meeting the requirements reached, and a noteworthy conference in 1968 gave birth to the of system engineering, yet also to satisfy my teacher’s urge to term software crisis [1, p.120]. present a systematic, consistent, appealing, and teachable Small wonder, then, that hopes rested on the advent of better framework for professional programming. tools. They were seen in new programming languages, symbolic In later years, I was often asked whether indeed I had designed debuggers, and team management. Dijkstra put the emphasis on Pascal and Modula-2 as languages for teaching. The answer is better education. Already in the mid-1960s he had outlined his "Yes, but not only". I wanted to teach programming rather than a discipline of structured programming [3], and the language Pascal language. A language, however, is needed to express programs. followed his ideas and represented an incarnation of a structured Thus, the language must be an appropriate tool, both for language [2]. But the dominating languages were FORTRAN in formulating programs and for expressing the basic concepts. It Permission to make digital/hard copy of part of this work for personal or must be supportive, rather than a burden! But I also hasten to add classroomPermission touse make is granteddigital or without hard copies fee of provided all or part that of this the work copies for personalare not or that Pascal and Modula-2 were not intended to remain confined to madeclassroom or distributeduse is granted for without profit fee or provide commerciald that copies advantage, are not made the orcopyright distributed the academic classroom. They were expected to be useful in notice,for profit the or title commercial of the publication,advantage and a ndthat its copies date ofbear appear, this notice and andnotice the isfull practice. Further comments can be found in [44]. givencitation thaton the copying first page. is Toby copy permission otherwise, orof republish,the ACM, to post Inc. on Toservers copy or to To be accurate, I had designed and implemented the otherwise,redistribute toto lists, republish, requires priorto post specific on servers,permission or and/or to redistribute a fee. to lists, SIGPLAN’05 June 12–15, 2005, Location, State, Country. predecessor language Modula [7 - 9] in 1975. It had been requiresCopyright prior© 2004 specific ACM 1-59593- permissionXXX-X/0X/000X…$5.00. and/or a fee. Permission may be requested from the Publications Dept., ACM, Inc., 2 Penn Plaza, New York, NY 11201-0701, USA, fax:+1(212) 869-0481, [email protected] ©2007 ACM 978-1-59593-766-7/2007/06-ART3 $5.00 3-1 DOI 10.1145/1238844.1238847 http://doi.acm.org/10.1145/1238844.1238847 conceived not as a general-purpose language, but rather as a unless it occurs in the module’s import list. This definition makes small, custom-tailored language for experimenting with sense if modules are considered as nestable, and it represents the concurrent processes and primitives for their synchronization. Its concept of information hiding as first postulated by Parnas in features were essentially confined to this topic, such as process, 1972 [4]. signal, and monitor [6]. The monitor, representing critical regions Visibility being controlled by modules and existence by with mutual exclusion, mutated into modules in Modula-2. procedures, the example of the pseudo-random number generator Modula-2 was planned to be a full-scale language for now turns out as follows in Modula-2. Local variables of modules implementing the entire software for the planned personal are allocated when the module is loaded, and remain allocated workstation Lilith [12, 19]. This had to include device drivers and until the module is explicitly discarded: storage allocator, as well as applications like document preparation and e-mail systems. module RandomNumbers; As it turned out later, Modula-2 was rather too complex. The export random; result of an effort at simplification ten years later was Oberon. var x: real; procedure random(): real; 2. The Language Modula-2 begin x := (c1*x +c2) mod c3; return x The defining report of Modula-2 appeared in 1979, and a textbook end random; on it in 1982 [13]. A tutorial was published, following the begin x := c0 (*seed*) growing popularity of the language [17, 18]. In planning Modula- end RandomNumbers 2, I saw it as a new version of Pascal updated to the requirements of the time, and I seized the opportunity to correct various The notation for a module was chosen identical to that of a mistakes in Pascal’s design, such as, for example, the syntactic monitor proposed by Hoare in 1974 [6], but lacks connotation of anomaly of the dangling "else", the incomplete specification of mutual exclusion of concurrent processes (as it was in Modula-1 procedure parameters, and others. Apart from relatively minor [7]). corrections and additions, the primary innovation was that of Modula-2’s module can also be regarded as a representation of modules. the concept of abstract data type postulated by Liskov in 1974 [5]. A module representing an abstract type exports the type, 2.1 Modules typically a record structured type, and the set of procedures and functions applicable to it. The type’s structure remains invisible ALGOL had introduced the important notions of limited scopes of and inaccessible from the outside of the module. Such a type is identifiers and of the temporary existence of objects. The limited called opaque. This makes it possible to postulate module visibility of an identifier and the limited lifetime of an object invariants. Probably the most popular example is the stack. (For (variable, procedure), however, were tightly coupled: All existing simplicity, we refrain from providing the guards s.n < N for push objects were visible, and the ones that were not visible did not and s.n > 0 for pop). exist (were not allocated). This tight coupling was an obstacle in some situations. We refer to the well-known function to generate module Stacks; the next pseudo-random number, where the last one must be export Stack, push, pop, init; stored to compute the next, while remaining invisible.
Recommended publications
  • Moneylab Reader: an Intervention in Digital Economy
    READER A N INTERVENTION IN DIGITAL ECONOMY FOREWORD BY SASKIA SASSEN EDITED BY GEERT LOVINK NATHANIEL TKACZ PATRICIA DE VRIES INC READER #10 MoneyLab Reader: An Intervention in Digital Economy Editors: Geert Lovink, Nathaniel Tkacz and Patricia de Vries Copy editing: Annie Goodner, Jess van Zyl, Matt Beros, Miriam Rasch and Morgan Currie Cover design: Content Context Design: Katja van Stiphout EPUB development: André Castro Printer: Drukkerij Tuijtel, Hardinxveld-Giessendam Publisher: Institute of Network Cultures, Amsterdam, 2015 ISBN: 978-90-822345-5-8 Contact Institute of Network Cultures phone: +31205951865 email: [email protected] web: www.networkcultures.org Order a copy or download this publication freely at: www.networkcultures.org/publications Join the MoneyLab mailing list at: http://listcultures.org/mailman/listinfo/moneylab_listcultures.org Supported by: Amsterdam University of Applied Sciences (Hogeschool van Amster- dam), Amsterdam Creative Industries Publishing and the University of Warwick Thanks to everyone at INC, to all of the authors for their contributions, Annie Goodner and Morgan Currie for their copy editing, and to Amsterdam Creative Industries Publishing for their financial support. This publication is licensed under Creative Commons Attribution NonCommercial ShareAlike 4.0 Unported (CC BY-NC-SA 4.0). To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/. EDITED BY GEERT LOVINK, NATHANIEL TKACZ AND PATRICIA DE VRIES INC READER #10 Previously published INC Readers The INC Reader series is derived from conference contributions and produced by the Institute of Network Cultures. They are available in print, EPUB, and PDF form. The MoneyLab Reader is the tenth publication in the series.
    [Show full text]
  • Entrepreneurship Has Emerged As Theeconomic Engine and Social
    Volume 12 Issue 1 Version 1.0 January 2012 Type: Double Blind Peer Reviewed International Research Journal Publisher: Global Journals Inc. (USA) Online ISSN: & Print ISSN: Abstract - This paper consists of an introductory survey of two fundamental questions regarding the link between international entrepreneurship and economic growth. The first step in establishing the linkages requires the formulation of knowledge about the psychological make-up of entrepreneurs. The paper explains that Entrepreneurial activity breeds innovation, injects competitive pressures and develops opportunities in economies. It is the foundation in many respects for broader economic development. Entrepreneurship polices are equally important, as an engine of innovation, in developed countries as they are in developing or transition economies. The purpose of this paper is to explain why the model of the entrepreneurial economy maybe a better frame of reference than the model of the managed economy when explaining the role of entrepreneurship in the contemporary, developed economies. While borrowing constraints or other financial frictions affect entrepreneurship productivity and the distribution of income by restricting agents from profitable occupations that require capital, such as entrepreneurship, this paper is devoted to exploring issues aiming to increase national wealth and to improve international competitiveness of the national economy. Keywords : entrepreneurship, small firms, economic growth, economic development, policy GJMBR Classification : Code: 150304, L26 Entrepreneurship Has Emerged As the Economic Engine and Social Development throughout the World Strictly as per the compliance and regulations of: © 2012 Dr. Ghirmai T Kefela.This is a research/review paper, distributed under the terms of the Creative Commons Attribution- Noncommercial 3.0 Unported License http://creativecommons.org/licenses/by-nc/3.0/), permitting all non-commercial use, distribution, and reproduction in any medium, provided the original work is properly cited.
    [Show full text]
  • New Economy, Food, and Agriculture
    A Service of Leibniz-Informationszentrum econstor Wirtschaft Leibniz Information Centre Make Your Publications Visible. zbw for Economics Klimczuk, Andrzej; Klimczuk-Kochańska, Magdalena Book Part — Accepted Manuscript (Postprint) New Economy, Food, and Agriculture Suggested Citation: Klimczuk, Andrzej; Klimczuk-Kochańska, Magdalena (2019) : New Economy, Food, and Agriculture, In: Kaplan, David M. (Ed.): Encyclopedia of Food and Agricultural Ethics, ISBN 978-94-007-6167-4, Springer, Dordrecht, pp. 1893-1898, http://dx.doi.org/10.1007/978-94-007-6167-4_629-1 This Version is available at: http://hdl.handle.net/10419/230607 Standard-Nutzungsbedingungen: Terms of use: Die Dokumente auf EconStor dürfen zu eigenen wissenschaftlichen Documents in EconStor may be saved and copied for your Zwecken und zum Privatgebrauch gespeichert und kopiert werden. personal and scholarly purposes. Sie dürfen die Dokumente nicht für öffentliche oder kommerzielle You are not to copy documents for public or commercial Zwecke vervielfältigen, öffentlich ausstellen, öffentlich zugänglich purposes, to exhibit the documents publicly, to make them machen, vertreiben oder anderweitig nutzen. publicly available on the internet, or to distribute or otherwise use the documents in public. Sofern die Verfasser die Dokumente unter Open-Content-Lizenzen (insbesondere CC-Lizenzen) zur Verfügung gestellt haben sollten, If the documents have been made available under an Open gelten abweichend von diesen Nutzungsbedingungen die in der dort Content Licence (especially Creative Commons Licences), you genannten Lizenz gewährten Nutzungsrechte. may exercise further usage rights as specified in the indicated licence. www.econstor.eu M. Klimczuk-Kochańska, A. Klimczuk, New Economy, Food, and Agriculture, [in:] P.B. Thompson, D.M. Kaplan (eds.), Encyclopedia of Food and Agricultural Ethics, Second Edition, Springer, Dordrecht 2019, pp.
    [Show full text]
  • ETH Eidgenossische Technische Hochschule Zurich H.Eberle
    ETH Eidgenossische lnstitut Technische fur lnformatik Hochschule ZUrich H.Eberle Hardware Description of the Workstation Ceres 11nuar 1987 ,70 70 . 61 .10 ETH Eidgenossische lnstitut Technische fur lnformatik Hochschule Zurich Eidrg. ~hn. ZI!rich lrricrm!!~!~:.~~lb;i::1H1a-k ETH~Zentrum CH..oo92 Zurich H.Eberle Hardware Description of the Workstation Ceres EidQ. lechn. He:ch'?~h'Jle Zilr\J::;!-: lnforme::!':.uib~iuthek El'l I-lei ili rn 11 CH-8002 ZOrtch gl,4-,23 Address of the author: lnstitut fiJr lnformatik ETH-Zentrum CH-8092 Zurich I Switzerland © 1987 lnstitut tor lnformatik, ETH Zurich 1 Hardware Description of the Workstation Ceres H.Eberle Abstract Ceres is a single-user computer based on the 32-bit microprocessor NS32000. The processor is oriented to the use of high-level languages. The hardware design concentrates on simplicity and modularity. The key features are the arbitrated memory bus and the high resolution bitmapped graphics display which promotes the attractivity of a programming workstation. This paper documents the hardware of the Ceres computer. 2 Contents 1 Introduction 3 2 Hardware Structure 4 2.1 Processor 4 2.2 Primary Memory 4 2.3 Secondary Memory 4 2.4 Input/Output Devices 4 3 Hardware Implementation 6 3.1 Processor Board 6 3.1.1 Processor 6 3.1.2 Memory Bus Arbiter 9 3.1.3 Boot ROM and Standard Input/Output Devices 12 3.2 Memory Board 15 3.3 Display Controller Board 18 3.3.1 Display Memory 18 3.3.2 Display Refresh Controller 19 3.4 Disk Controller Board 23 3.5 Motherboard 23 4 Hardware Extensions 24 References 26 Appendices A Circuit Diagrams 28 A.1 Processor Board 28 A.2 Memory Board 35 A.3 Display Controller Board 37 B PAL Design Specifications 42 c Interface Connectors 47 C.1 Processor Board 47 C.2 Display Controller Board 48 C.3 Motherboard 48 3 1 Introduction Todays working tools of a software engineer at the lnstitut fUr lnformatik of ETH ZOrich are the programming language Modula-2 [1] and the workstation computer Lilith [2].
    [Show full text]
  • Science&Security Regional Meeting 5-16-06.Rtf
    NATIONAL ACADEMY OF SCIENCES COMMITTEE ON A NEW GOVERNMENT- UNIVERSITY PARTNERSHIP FOR SCIENCE AND SECURITY NORTHEAST REGIONAL MEETING May 16, 2006 Massachusetts Institute of Technology 70 Memorial Drive Cambridge, Massachusetts NOTE: This is an unedited verbatim transcript of the workshop on a New Government- University Partnership for Science and Security held at the Massachusetts Institute of Technology on May 15-16, 2006. It was prepared by CASET Associates and is not an official report of The National Academies. Opinions and statements included in the transcript are solely those of the individual persons or participants at the workshop, and are not necessarily adopted or endorsed or verified as accurate by The National Academies. 2 Proceedings By: CASET Associates, Ltd. 10201 Lee Highway, Suite 180 Fairfax, Virginia 22030 (703)352-0091 NOTE: This is an unedited verbatim transcript of the workshop on a New Government-University Partnership for Science and Security held at the Massachusetts Institute of Technology on May 15-16, 2006. It was prepared by CASET Associates and is not an official report of The National Academies. Opinions and statements included in the transcript are solely those of the individual persons or participants at the workshop, and are not necessarily adopted or endorsed or verified as accurate by The National Academies. List of Participants: Jacques S. Gansler Alice P. Gast Sheila S. Jasanoff George Church Judith Reppy Sue E. Eckert Suzanne Berger Debra W. Stewart Timothy Bereznay Eugene B. Skolnikoff Charles M. Vest NOTE: This is an unedited verbatim transcript of the workshop on a New Government-University Partnership for Science and Security held at the Massachusetts Institute of Technology on May 15-16, 2006.
    [Show full text]
  • Niklaus Wirth—A Pioneer of Computer Science 1
    Niklaus Wirth—A Pioneer of Computer Science 1 Niklaus Wirth — a Pioneer of Computer Science Gustav Pomberger, Hanspeter Mössenböck, Peter Rechenberg Johannes Kepler University of Linz [email protected], [email protected], [email protected] Abstract Niklaus Wirth is one of the most influential scientists of the early computer age. His ideas and especially his programming languages have shaped gen- erations of programmers worldwide. This paper tries to acknowledge the scientific achievements of Niklaus Wirth and to honor him as a person. A small part of the paper is also devoted to Wirth's influence on computer sci- ence at the Johannes Kepler University of Linz. 1 Introduction Ask computer specialists anywhere—be it in Europe or America, in Asia or Australia—who the most important computer scientists in the world are, and you can bet that the name Niklaus Wirth will be on every list. Ask programming language experts about the person with the greatest influence on the development of programming languages, and they would agree on Niklaus Wirth. Ask students, teachers and computer hobbyists about the most important programming lan- guages, and you can be sure that even today Pascal will be on every list. Finally, examine the literature of computer science in the elite circle of books with the greatest number of copies printed, the widest distribution, and the most transla- tions, and you will find books by Niklaus Wirth, especially the prominent book on Pascal. These few examples show that professor Niklaus Wirth is one of the world's leading computer scientists.
    [Show full text]
  • Download the 17Th CEEMAN Conference Proceedings
    Proceedings of the 17th CEEMAN Annual Conference 24-26 September 2009 Riga, Latvia Local Responses to Global Crisis Sponsors CIP - Kataložni zapis o publikaciji Narodna in univerzitetna knjižnica, Ljubljana 37:005(082) 005.931.11(082) CEEMAN. Annual Conference (17 ; 2009 ; Riga) Local responses to global crisis : proceedings of the 17th CEEMAN Annual Conference, 24-26 September 2009, Riga, Latvia / Published by [editor Michael Minkov]. - Bled : CEEMAN - Central and East CEEMAN - Central and East European European Management Development Association, 2009 Management Development Association Prešernova cesta 33, 4260 Bled, Slovenia ISBN 978-961-92270-4-6 www.ceeman.org 1. Gl. stv. nasl. 2. Minkov, Michael 249041920 Circulation: 600 copies Local Responses to Global Crisis Proceedings of the 17th CEEMAN Annual Conference 24-26 September 2009 Riga, Latvia Content 5 Proceedings of the 17th CEEMAN Deans and Directors Meeting: Global Crisis and Business School Responses 6 Welcome word Danica Purg, CEEMAN President 7 Introduction by the Chairman Jim Ellert, Former Dean of Faculty, IMD Lausanne, Switzerland 10 Global Crisis and Management Education: Challenges and Opportunities General findings from the CEEMAN Survey on Business Schools Responses to Global Crisis Milenko Gudić, Managing Director IMTA, CEEMAN, Slovenia Al Rosenbloom, Associate Professor, Dominican University, US 19 Responding to Customers Needs: Implications for Faculty, Research, Educa- tional Programs Al Rosenbloom, Associate Professor, Dominican University, US Irina Sennikova, Dean,
    [Show full text]
  • Project Oberon the Design of an Operating System and Compiler
    1 Niklaus Wirth Jürg Gutknecht Project Oberon The Design of an Operating System and Compiler Edition 2005 2 Project Oberon Preface This book presents the results of Project Oberon, namely an entire software environment for a modern workstation. The project was undertaken by the authors in the years 1986-89, and its primary goal was to design and implement an entire system from scratch, and to structure it in such a way that it can be described, explained, and understood as a whole. In order to become confronted with all aspects, problems, design decisions and details, the authors not only conceived but also programmed the entire system described in this book, and more. Although there exist numerous books explaining principles and structures of operating systems, there is a lack of descriptions of systems actually implemented and used. We wished not only to give advice on how a system might be built, but to demonstrate how one was built. Program listings therefore play a key role in this text, because they alone contain the ultimate explanations. The choice of a suitable formalism therefore assumed great importance, and we designed the language Oberon as not only an effective vehicle for implementation, but also as a publication medium for algorithms in the spirit in which Algol 60 had been created three decades ago. Because of its structure, the language Oberon is equally well suited to exhibit global, modular structures of programmed systems. In spite of the small number of man-years spent on realizing the Oberon System, and in spite of its compactness letting its description fit a single book, it is not an academic toy, but rather a versatile workstation system that has found many satisfied and even enthusiastic users in academia and industry.
    [Show full text]
  • Object-Oriented Programming in Oberon-2
    Hanspeter Mössenböck Object-Oriented Programming in Oberon-2 Second Edition © Springer‐Verlag Berlin Heidelberg 1993, 1994 This book is out of print and is made available as PDF with the friendly permission of Springer‐Verlag Contents 1 Overview......................................................................................... 1 1.1 Procedure-Oriented Thinking............................................. 1 1.2 Object-Oriented Thinking .................................................... 2 1.3 Object-Oriented Languages................................................. 3 1.4 How OOP Differs from Conventional Programming...... 6 1.5 Classes as Abstraction Mechanisms ................................... 9 1.6 History of Object-Oriented Languages ............................ 11 1.7 Summary .............................................................................. 12 2 Oberon-2........................................................................................ 13 2.1 Features of Oberon-2 .......................................................... 14 2.2 Declarations ......................................................................... 14 2.3 Expressions .......................................................................... 16 2.4 Statements ............................................................................ 18 2.5 Procedures............................................................................ 19 2.6 Modules................................................................................ 21 2.7 Commands..........................................................................
    [Show full text]
  • Competitiveness Index: Where America Stands
    16:15:9 16:15:9 2/26/07 2/26/07 Index: Stands on Council Competitiveness America Where Competitiveness 1 1 C58931.indd C58931.indd Competitiveness Index: Where America Stands Council on Competitiveness This publication may not be reproduced, in whole or in part, in any form beyond copying permitted by sections 107 and 108 of the U.S. copyright law and excerpts by reviewers for the public press, without written permission from the publishers. ISBN 1 - 8 8 9 8 6 6 - 3 1 - 8 THE COUNCIL ON COMPETITIVENESS is a nonprofi t, 501(c) (3) organization as recognized by the U.S. Internal Revenue Service. The Council’s activities are funded by contributions from its members, foundations, and project contributions. To learn more about the Council on Competitiveness, visit our home page at www.compete.org. COPYRIGHT © 2007 Council on Competitiveness DESIGN Paul Soulellis, Soulellis Studio (with Richard Saul Wurman) Printed in the United States of America C58931.indd 2 2/26/07 16:15:12 Competitiveness Index: Where America Stands Council on Competitiveness C58931.indd 3 2/23/07 18:22:20 2 Council on Competitiveness Competitiveness Index: Where America Stands Twenty Years 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1 John Young 1986–1991 George Fisher 1991–1994 Paul Allaire 1994–1997 B Former Chairman and CEO, Hewlett Packard. Founder, Retired Chairman and Chief Executive Offi cer, Chaiman Emeritus, Xerox Corporation C Council on Competitiveness Eastman Kodak Company W Paul Allaire is the former chairman and chief executive of John Young was president of Hewlett-Packard Company from 1977 George Fisher held the Kodak positions of chairman, Xerox Corporation.
    [Show full text]
  • Historische Innovationen Von Niklaus Wirth
    Historische Innovationen von Niklaus Wirth Romain Schmitz 26. Januar 2006 Biografie 1934 geboren am 15. Februar, Schweiz 1959 Abschluss als Elektroingenieur 1963 Promotion, Berekley 1968 Professor an der ETH Zürich 1999 Emeritation Entwicklungen 60 63 68 70 74 82 86 Euler Algol-60 Algol-W Pascal Modula Modula-2 Oberon Liltith Ceres Medos-2 Oberon ALGOL 60 60 63 68 70 74 82 86 Euler Algol-60 Algol-W Pascal Modula Modula-2 Oberon Liltith Ceres Medos-2 Oberon Euler Algol-60 Algol-W Pascal Modula Modula-2 Oberon Liltith Ceres Algol-60 Medos-2 Oberon ➔ Backus Naur Form ➔ Strukturierte Programmierung ➔ Blockstruktur ➔ Rekursion ➔ Call by name Euler Algol-60 Algol-W Pascal Modula Modula-2 Oberon Liltith Ceres Algol-60 Medos-2 Oberon Satz ::= Subjekt Prädikat Zusatz Subjekt ::= “Peter“ | “Siegfried“ Prädikat ::= “arbeitet“ | “schläft“ Zusatz ::= “nicht“ | epsilon Gültige Sätze: – Peter schläft nicht – Siegfried arbeitet Euler Algol-60 Algol-W Pascal Modula Modula-2 Oberon Liltith Ceres Algol-60 Medos-2 Oberon <block> ::= <unlabelled block> | <label> : <block> <unlabelled block> ::= <block head> ; <compound tail> <block head> ::= begin <declaration> | <block head> ; <declaration> <declaration> ::= <type declaration> | <procedure declaration> | ... <type declaration> ::= <type> <variable> | ... <compound tail> ::= <statement> end | <statement> ; <compound tail> Euler Algol-60 Algol-W Pascal Modula Modula-2 Oberon Liltith Ceres Algol-60 Medos-2 Oberon begin ISUMME = 0 integer zahl1, zahl2, summe; IZAHL1 = 0 IZAHL2 = 255 procedure addiere(a,b); integer
    [Show full text]
  • Abstract Notes from the Iv 05, Information Visualization
    INFORMATION VISUALIZATION CONFERENCE AND DIGITAL ART GALLERY Information Visualization (iV): Notes about the 9th IV ’05 International Conference, London, England Anna Ursyn University of Northern Colorado Ebad Banissi, London South Bank University Abstract This review tells about the International Conference on Information Visualization that is held annually in London, England. Themes selected from the Conference Proceedings are focused on theoretical concepts, semantic approach to visualization, digital art, and involve 2D, 3D, interactive and virtual reality tools and applications. The focal point of the iV 05 Conference was the progress in information and knowledge visualization, visual data mining, multimodal interfaces, multimedia, web graphics, graph theory application, augmented and virtual reality, semantic web visualization, HCI, digital art, among many other areas such as information visualization in geology, medicine, industry and education. Notes from the iV 05, Information Visualization Conference, D-Art Symposium and Digital Art Gallery, London, England, 6-8 July 2005 Anna Ursyn, University of Northern Colorado, USA Ebad Banissi, VGRU, London South Bank University, UK 1. Introduction The focal point of the iV 05 Conference was visualization, information visualization, and knowledge visualization. The theoretical concepts (such as cognition, constructivist approach to language and culture, spatial abilities), basic framework (such as human- computer interaction, graph theory, geometric modeling, visual data mining) and applications (such as geo-visualization, building-visualization, web visualization or knowledge visualization in organizations) were equally discussed at the iV Conference. D-Art Symposium and Digital Art Gallery complemented the Conference. Some art works presented at the Gallery illustrate the Notes. Visualization can be defined as the creation of graphic images directly from data, and outcomes form algorithmic manipulation of these data (Slocum and al., 2004, after Lobben, 2005: 764-769).
    [Show full text]