Module Details

The information contained in this module specification was correct at the time of publication but may be subject to change, either during the session because of unforeseen circumstances, or following review of the module at the end of the session. Queries about the module should be directed to the member of staff with responsibility for the module.
Title SEMANTICS OF PROGRAMMING LANGUAGES
Code COMP317
Coordinator Dr GR Malcolm
Computer Science
Grant@liverpool.ac.uk
Year CATS Level Semester CATS Value
Session 2019-20 Level 6 FHEQ Second Semester 15

Aims

to present the major ideas from the area of formal semantics of programming languages; to demonstrate their importance to language design and implementation, and to program verification, specification and refinement; to develop simple mathematical techniques for describing the semantics of programs and reasoning about their denotations; to give an overview of the relationships between program semantics and logics of computation.


Learning Outcomes

(LO1) By the end of the module, students will: understand the concept of formal semantics of programs and the mathematical techniques used to describe the semantics of programming languages; be able to use these in reasoning about programs and computations; have a deeper understanding of the notions o computation and data structure; have a deeper understanding of program specification,verification and refinement, as well as the issues involved in integrating software components written in different languages.


Syllabus

 

1 Introduction and Overview (3 lectures)     syntax and semantics; informal semantics;     programming languages and compositional semantics;     logic and computation   Denotational Semantics (6 lectures)     programs as functions; loops and recursion; fixed points   Semantics of Data Structures (9 lectures)     algebraic specifications; models;     equational deduction and computation as proof   Axiomatic Semantics (12 lectures)     specification of programs and languages; correctness proofs;     objects, data structures and local states


Teaching and Learning Strategies

Teaching Method 1 - Lecture
Description:
Attendance Recorded: Not yet decided


Teaching Schedule

  Lectures Seminars Tutorials Lab Practicals Fieldwork Placement Other TOTAL
Study Hours 30

          30
Timetable (if known)              
Private Study 120
TOTAL HOURS 150

Assessment

EXAM Duration Timing
(Semester)
% of
final
mark
Resit/resubmission
opportunity
Penalty for late
submission
Notes
             
CONTINUOUS Duration Timing
(Semester)
% of
final
mark
Resit/resubmission
opportunity
Penalty for late
submission
Notes
             

Recommended Texts

Reading lists are managed at readinglists.liverpool.ac.uk. Click here to access the reading lists for this module.