Table Of ContentLecture Notes ni
Computer Science
Edited yb .G Goos dna .J Hartmanis
97
egaugnaL ngiseD
dna
gnimmargorP ygolodohteM
sgnideecorP of a muisopmyS
Held ni Sydney, ,ailartsuA
11-01 September, 9791
Edited yb Jeffrey .M Tobias
galreV-regnirpS
nilreB Heidelberg New kroY 1980
Editorial Board
W. Brauer P. Brinch Hansen D. Gries C. Moler G. SeegmLWler
J. Stoer N. Wirth
Editor
Jeffrey M. Tobias
Computer Science Group
Applied Mathematics and Computing Division
Australian Atomic Energy Commission
New Illawarra Road
Lucas Heights, Sydney 2232
N.S.W.
Australia
AMS Subject Classifications (1979): 68-02, 68A05
CR Subject Classifications (19"74): 4.2, 4.6
ISBN 3-540-09745-7 Springer-Verlag Berlin Heidelberg New York
tSBN 0-387-09745-7 Springer-Vertag New York Heidelberg Berlin
yrarbiL Data in Publication Cataloging Congress of muisopmyS on egaugnaL
Design dna gnimmargorP design Language 1979. Sydney, Methodology, dna
gnimmargorp .ygolodohtem ?9) science; computer in notes (Lecture derosnopS
the University and Commission Energy Atomic Australian the by of South New
Bibliography: Wales. .p index. Includes .1 gnimmargorP (Electronic languages
)sretupmoc .sessergnoC-- .2 digital computers-- Electronic -noC-~gnimmargorP
.sesserg .I Tobias, yerffeJ ,.M 1953- .II Energy Atomic Australia. .noissimmoC
LlI Kensington. University, Wales. South New .VI Title. .V .seireS
QA76.7.S94 97'91 80-10637 001.84'24
0-387-09745-7 ISBN
work This si All rights to copyright. subject era ,devreser or whole the whether trap
the of lairetam re*use reprinting, translation, of those specifically concerned, is of
machine photocopying by reproduction broadcasting, illustrations, or similar ,snaem
dna data in storage .sknab § Under 54 of the namreG Copyright waL copies where
era edam a use, private than for other eef of amount the publisher, the to is payable
the eef to eb by determined tnemeerga the with publisher.
Berlin 1980 Heidelberg © Springer-Verlag by
in Printed ynamreG
Offsetdructq binding: and Be}tz Printing .rtsgreB/hcabsmeH
012345-0413/5412
MARGORP EETTIMMOC
.rM .I Hayes, University of New South Wales
.rD J. Hext, University of Sydney
Professor P. Poole, University of Melbourne
Professor J. Reinfelds, University of Wollongong
Professor J. University Rohl, of Western Australia
Professor .A Sale, University of Tasmania
.rD J. Sanderson, University of Adelaide
.rM J. .M Tobias, Australian Atomic Energy Commission (Chairman)
.rD J. University Welsh, Qoufe ensland
SPONSORS
NAILARTSUA CIMOTA YGRENE NOISSIMMOC YTISREVINU OF WEN SOUTH SELAW
ECAFERP
If the seventies are to go down in the annals of computer science history as a decade
of technological achievement ni the manufacture of semiconductor devices, then one
might predict that the eighties would see a commensurate expansion in the development
of programming tools and methods. It would be unfortunate fi the comparatively primi-
tive tools of today, which are being so widely distributed as a result of a burgeoning
computer industry, bind us to an obsolete methodology.
With the challenge of the next decade ni mind, over two hundred members of the
scientific community interested in the future of programming and its methodology met
at a Symposium in Sydney in September, 1979, to discuss language design and program-
ming techniques. Professor Niklaus Wirth of ETH Zurich, renowned for his development
of a number of superbly engineered programming languages, was invited to address
the Symposium, together with Dr Dennis Ritchie, of Bell Laboratories USA, the origina-
tor of the programming language C and co-author of the UNIX time-sharing system.
Twenty-five extended summaries were submitted for review by the program commit-
tee. Only fourteen papers were finally accepted following a second review, and I would
like to thank the members of the Program Committee for serving as referees. The
papers in this Proceedings were printed from camera-ready copies supplied by the
authors, and special thanks must go to Mr Ken Tate of the AAEC and his editorial
group for so carefully proofreading the papers and assisting ni the preparation of this
volume.
The planning of this Symposium was largely undertaken by the Chairman with the
sponsorship of the Australian Atomic Energy Commission and the University of New
South Wales. tI is impossible to list ni a brief preface lla those to whom thanks are
due, but I am certainly very grateful to Dr Donald Richardson of the AAEC and Professor
Murray Allen of the UNSW for their continued encouragement and guidance. Thanks
also go to the management of the AAEC, ni particular Professor Don George, Mr
Keith Alder and Dr Grant Miles, for their enthusiasm in supporting the Symposium.
Special thanks are due to Mrs Melania Moore for her invaluable assistance in lla aspects
of organisation, to Mr Gordon Evans for the first-class printing of the Proceedings,
-to Mrs Margaret Bray for the typing of correspondence, and to lla those who helped
during the Symposium itself.
Jeffrey .M Tobias
Symposium Chairman
SGNIDEECORP FO THE MUISOPMYS NO
EGAUGNAL NGISED GNIMMARGORP DNA YGOLODOHTEM
,YENDYS 11~01 ,REBMETPES 1979
"When you're lying awake with a dismal headache,
and repose is taboo'd by anxiety,
I conceive you may use any language you choose
to indulge in, without impropriety."
Iolanthe
Sir William Gilbert
STNETNOC
Page
PREFACE
THE MODULE "A SYSTEM STRUCTURING FACILITY NI
PROGRAMMING LANGUAGES HIGH-LEVEL Niklaus Wirth
THE EVOLUTION OF THE UNIX GNIRAHS-EMIT
METSYS Dennis .M Ritchie 25
A COMPARISON VERSUS SUBJECTIVE PASCAL C • Prabhaker Mateti 37
RECURSION? WHY Jeffrey .S Rohl 17
NO THE PRIME EXAMPLE OF PROGRAMMING Paul Pritchard 85
DESCRIBING THE COMPLETE EFFECTS OF PROGRAMS Ria Follett 95
PA~ERN-MATCHING COMMANDS Jan .B Hext 105
A LANGUAGE FOR DESCRIBING CONCEPTS AS
PROGRAMS Claude Sammut and Brian Cohen 111
HUMAN A TNEMEVOM LANGUAGE FOR COMPUTER
NOITAMINA Don Herbison-Evans 117
SPECIFICATIONS AND ALGEBRAIC TRANSITION GRAPHS
Norman .Y Foo 129
MISAD I: A EXERCISE PRACTICAL NI DATA
ABSTRACTION Geoffrey J, Nolan 143
THE DESIGN OF A SUCCESSOR TO PASCAL Ken Robinson 151
DOPLs A : WEN TYPE OF LANGUAGE PROGRAMMING Graham Lee
169
A PERSONAL COMPUTER BASED ON A HIGH-LEVEL
LANGUAGE (Abstract) Niklaus Wirth 191
NA EXPERIMENT NI SCIENCE SOFTWARE
Dan .B Johnston and Andrew ,M Lister 195
A CRITIQUE OF MODULA Andrew Richardson 217
COMPARISON A OF TWO NOTATIONS FOR PROCESS
NOITACINUMMOC Jim Welsh, Andrew .M Lister and J. Eric Salzman 225
AUTHORS' AFFILIATIONS 255
SGNIDEECORP FO THE MUISOPMYS NO
EGAUGNAL DESIGN GNIMMARGO RDPNA YGOLODOHTEM
,YENDYS 10-11 ,REBMETPES 1979
THE MODULE A : SYSTEM STRUCTURING FACILITY NI
HIGH-LEVEL PROGRAMMING LANGUAGES
Niklaus Wirth
Institut ri~f Informatik
ETH Ztirich
TCARTSBA
ehT key to successful programming is finding the "right" structure
of data dna program. A programming language concept called module is
presented here as a snaem to partition systems effectively. ehT module
allows to encapsulate local details dna to specify explicitly those
elements that are part of the interface between modules.
Modules sa presented here are part of the language Modula-2.
Problems of separate compilation dna of splitting a module into
definition (interface) dna implementation parts are discussed.
* Institut "fUr Informatik
murtneZ-HTE
2908-HC ZUrich