next up previous contents
Next: Language Semantics and Implementation Up: Descriptions of Modules and Previous: Database Systems   Contents

Subsections

Functional Programming and Specification

Description

The course has two aims. The first is to provide an introduction to programming in Standard ML including the use of the facilities it offers for structuring programs into modules. The clean functional programming paradigm represented by ML is quite different from the imperative object-oriented paradigm represented by Java, making it more suitable for many applications. The second aim is to provide an introduction to formal methods for specification and development of programs, using the Extended ML specification framework as a vehicle. Simple proofs of properties of functions are interwoven with the first part of the course to link it with the second part.

Syllabus

Assessed Coursework

There will be three assessed exercises:
  1. An exercise in programming in the SML ``core'' language
  2. An exercise in the use of SML modules
  3. A pencil-and-paper exercise in specification and proof in EML.
These will count equally, and together they will account for 25% of the mark for this module.

Examination

A two-part examination is (tentatively) planned: one part will be a conventional written examination while the other part will be a programming exercise done on-line under exam conditions. These will count equally, and together they will account for 75% of the mark.


\begin{references}
\par\stars3 R. Harper. Programming in Standard ML. Carnegie M...
...for the
working programmer. Will be available from the ITO.
\par\end{references}


next up previous contents
Next: Language Semantics and Implementation Up: Descriptions of Modules and Previous: Database Systems   Contents
CS3 dummy user 2001-09-25