The design and implementation of a structured programming language with few arbitrary restrictions : the compilation phase : a dissertation presented in partial fulfilment of the requirements for the degree of Master of Science in Computer Science at Massey University
This thesis outlines the design and implementation of a structured teaching language with particular emphasis on the compilation phase. This language, which has been called MUSSEL (Massey University Structured Student Language) is intended for instruction of first year Computer Science students. In this respect it is a language which is as free as possible from arbitrary syntactic restrictions and is in a form that the student should find both easy and natural to write, with a minimum incidence of programming errors. It is evident that the language a student uses profoundly influences the way he develops his techniques and habits of construction of algorithms. MUSSEL has been designed with this influence in mind and has been deliberately designed as a structured language i.e. the language reflects the basic structure of programs, so that algorithms can be refined and expressed naturally in it. In this sense MUSSEL aims to teach the student programming as a constructive intellectual discipline rather than just as a tool to communicate with the computer. MUSSEL has been implemented as an interpretive system i.e. during the compilation phase the source language is translated into an intermediate language, which, is then interpreted. The reasons influencing this type of implementation are the need in a teaching language to minimise compile time and to maximise diagnostics, both at compile-time and at execution-time.