Advanced programming tools
A Sajeev
6 points * 4 hours per week * Second semester * Caulfield
Examination of how to move from a high-level specification to implemented code (called refinement), and language translation techniques which can assist in this endeavour. Review of formal specification languages and their object-oriented extensions. Refining high-level specifications to executable languages - imperative, functional and logic-oriented. Refining object-oriented specifications. Basic concepts in language translation - lexical, syntactic and semantic analysis, type-checking and syntax-directed translation. Translation issues for object-oriented and specification languages. Optimising the translation process. Language prototyping. Translation tools.
Assessment
Assignments: 100%
Prescribed texts
Diller A Z: An introduction to formal methods Wiley, 1990
Pitman I and Peters J The art of compiler design Prentice-Hall, 1992
Recommended texts
Jones N D and others Partial evaluation and automatic program generation Prentice-Hall, year??
Morgan C Programming from specifications Prentice-Hall, 1990
Partsch H Specification and transformation of programs Springer-Verlag, 1990