Path: utzoo!utgpu!news-server.csri.toronto.edu!bonnie.concordia.ca!uunet!mcsun!ukc!icdoc!iwm From: iwm@doc.ic.ac.uk (Ian Moor) Newsgroups: comp.lang.modula2 Subject: Re: Garden's Point Modula-2 Message-ID: Date: 6 Jun 91 13:07:21 GMT References: <1772@uqcspe.cs.uq.oz.au> Organization: Department of Confusion, Imperial College, London UK Lines: 42 Nntp-Posting-Host: swan.doc.ic.ac.uk In-Reply-To: warwick@cs.uq.oz.au's message of 4 Jun 91 23:44:50 GMT In article <1772@uqcspe.cs.uq.oz.au> warwick@cs.uq.oz.au (Warwick Allison) writes: > The Queensland University of Technology has developed a Modula-2 compiler > which produces C as intermediate code. > > I think this is an excellent idea, as it means the optimisation techniques > developed over many years for C can be utilized for Modula-2. But I don't think there are techniques for optimising C that cannot be applied to Modula-2 directly. Indeed, some optimisations must be easier on Modula-2 because the language has fewer loopholes (consider generating code for MODULA-2 and C `for' statements). There is a problem generating C for things that have no close equivalents, such as nested procedures, something like PROCEDURE A; PROCEDURE B; BEGIN A; END B; BEGIN A; B; END A; cannot easily be mapped to C. Gardens Point seems to produce incorrect C for something like this. -- Ian W Moor Internet: iwm@doc.ic.ac.uk JANET: iwm@uk.ac.ic.doc Department of Computing, That which you call a crime when one man does it, Imperial College. you call government when done by many. 180 Queensgate London SW7 UK.