Return to search

Operator identification in Algol 68

The special feature that modes and operators can be defined by the user of ALGOL 68 has induced the problems of coercion, balancing and operator identification.
This work deals with the mode manipulation and operator identification in ALGOL 68. The algorithms are based on those of [Z]. Some of the revisions to the ALGOL 68 Report concerning modes, such as no proceduring, the void symbol, the definition of NONPROC, the definition of a vacuum, and the hipping of a vacuum are included. The program in ALGOL W is based on that of [P].
The program described in this thesis does four main jobs: mode eguivalencing, mode coercion, mode balancing and operator identification. In mode eguivalencing, it checks the context conditions concerning "showing" [R.4.4.4] and the multiple occurrence of the same field selector in a structure [R.4.4.3e], and checks related modes in unions [ B.4.4.3b,d]. In mode coercion, it determines the coercion steps. This is also a basic part of mode balancing and operator identification. In balancing, it also considers collateral displays. This is a model for the operator identification part of an ALGOL 68 compiler.
I am deeply indebted to Professor J. E. L. Peck for initiating my study of ALGOL 68 and ALGOL W, for suggesting the topic of this thesis and for rendering invaluable assistance, encouragement and patience throughout the course of my work. I would like to thank the group which is working under Dr. Peck for the ALGOL 68 implementation, Dr. W. J. Hansen and especially Dr. M. Zosel for many helpful suggestions and discussions.
I gratefully acknowledge the financial support of NRC. / Science, Faculty of / Computer Science, Department of / Graduate

Identiferoai:union.ndltd.org:UBC/oai:circle.library.ubc.ca:2429/32696
Date January 1973
CreatorsKwan, Ying
PublisherUniversity of British Columbia
Source SetsUniversity of British Columbia
LanguageEnglish
Detected LanguageEnglish
TypeText, Thesis/Dissertation
RightsFor non-commercial purposes only, such as research, private study and education. Additional conditions apply, see Terms of Use https://open.library.ubc.ca/terms_of_use.

Page generated in 0.0062 seconds