Maharishi University of Management
Computer Science Department

COMP 505 : Advanced Programming  Languages

Spring 2006


Denotational Semantics Prototyping Labs
You are given a template of the implementation of 
the denotational semantics for Imp.1 from the book, basicallya cleaned-up and more
complete version of what is in the book (Ex 4.7).
First fill in this template for the foundation routines.
The lab will be completed in stages:
You can choose from the following list of semantic extensions:
Procedures (Ex. 4.12) [Easy]
Parameters (Ex. 4.13) [Easy] (Eg. 3.8)
Loops [Easy] (model after C)

 

Lab Suggestions
You can do the entire lab in the same SML environment that you used for our simpler
program exercise, but you may want to look into either the MLWorks environment, or
using the SML environment, which provides a debugger. You will find that programming
in ML is quite different than IP languages, as almost all errors are caught at compile
time by the strict type checking. In the presence of polymorphism, types for many
functions will be too liberal, and thus it is good (especially during development) to
use type constraints liberally.
Lab Submission
You should zip up your lab and submit it as you did with the homeworks.