Tony Harminc writes:
| A perhaps more interesting related question is why IBM's
| languages, including COBOL, seem to continue to have
| their own code generation, rather than using a GCC-like
| scheme of language-specific front end, followed by
| common code generation and optimization back (and
| middle, to use GCC terminology) ends . . .
In fact there are signs of this: IBM PL/I and C/C++ use the same backend code
generator and optimizer, with interesting consequences for both languages,
which are mostly but not always adverse for PL/I. Members of the subset of
PL/I select groups that correspond exactly to C switch statements are, for
example, identified and better optimized than they once were for PL/I alone;
but PL/l multitasking and asynchronous I/O, which were among the glories of the
language, have been lost, folded into their watered-down C analogues.
Compromises of this sort are inescapable with GCC-like schemes. They are made
very differently by different groups, but they do always reflect a group's
preference for the episteme of one statement-level procedural language (SLPL)
over that of another.
The optimizing--systematic special-casing--machinery made available in any
situation reflects judgments of what is and, more controversially, is not
important that another group, champion of another SLPL, are certain to disagree
with strongly.
John Gilmore, Ashland, MA 01721, USA
_________________________________________________________________
Hotmail: Trusted email with powerful SPAM protection.
http://clk.atdmt.com/GBL/go/177141665/direct/01/
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html