mwang@watmath.UUCP (mwang) (04/22/85)
DEPARTMENT OF COMPUTER SCIENCE UNIVERSITY OF WATERLOO COMPUTER SCIENCE COLLOQUIUM - Wednesday, May 1, 1985. Mr. J.R. Cordy of the University of Toronto will speak on ``An Orthogonal Model for Code Generation''. TIME: 3:30 PM ROOM: MC 5158 ABSTRACT Code generation is the part of programming language compilation which is concerned with choosing the actual implementation of programming language constructs in terms of computer hardware. We can characterize the code generation problem as a mapping from the abstract, mathematical world of programming languages to the con- crete, discrete world of computing machines. Objects in each of these worlds can be expressed in terms of two fundamental concepts: operators and operands. Viewed in this way, every existing systematic approach to code generation is based on the same model. This traditional model begins by decomposing abstract operand structure into sequences of abstract operators. Machine implementation is then accomplished as a single complex process which tends to obscure the mapping between language objects and their machine representa- tion. We propose a new model, which we call the orthogonal model, which separates the implementation of abstract operators and abstract operands into two essentially independent parts. In the orthogonal model, abstract operand structure is left intact until implementation of abstract operators is complete. It then remains to implement abstract operands as a separate step. We present a code generator structure based on this model, which is simpler and more easily understood than existing structures. We present fundamental algorithms of the orthogonal code generator and show how these algorithms can be easily parameterized across a large class of target computers. Coffee and refreshments will be served at 3:15 pm.