Related articles |
---|
denotational semantics and compilers compilers@ima.UUCP (1986-01-09) |
Relay-Version: | version B 2.10.2 9/12/84; site mit-hermes.ARPA |
Posting-Version: | Notesfiles $Revision: 1.6.2.16 $; site ima.UUCP |
From: | compilers@ima.UUCP |
Newsgroups: | mod.compilers |
Date: | 9 Jan 86 19:40:00 GMT |
Article-I.D.: | ima.136300038 |
Posted: | Thu Jan 9 14:40:00 1986 |
Date-Received: | 11 Jan 86 11:23:59 GMT |
Nf-ID: | #N:ima:136300038:000:759 |
Nf-From: | ima!compilers Jan 9 14:40:00 1986 |
[from ihnp4!philabs!sbcs!debray (Saumya Debray)]
> When I read a denotational semantics, I think of it as an
> operational semantics written in Scheme ...
One big difference between denotational and opeerational semantics is
that the former lets us talk about nonterminating computations in a
useful way. All nonterminating computations are treated as being
equivalent to "bottom", which essentially denotes "having zero
information content"; this isn't possible in operational semantics.
This equivalence forms the basis for strictness analysis, for example,
which enables us to replace call-by-name parameter passing by an
"equivalent" (but much more efficient) call-by-value parameter passing
at compile time.
-Saumya Debray
SUNY at Stony Brook
Return to the
comp.compilers page.
Search the
comp.compilers archives again.