Designing a multi-level programming language

Many programming languages operate at a fixed level of abstraction.  Their compilers may transform the code through several levels, but those are hidden from the programmer.  This talk describes work in progress on a language that supplies medium level constructs (comparable to Pascal or C), as well as intermediate and low level constructs (which give direct access to machine registers and instructions, similar to PL360).  A program can be compiled by transforming it to lower levels, all of which are expressible within the language.  The compilation can be carried out manually as well as automatically.  A hypothesis is that the approach could enhance teaching, where it would offer a clear way to understand the semantics of a language.

Location: University of Glasgow, Sir Alwyn Willaims Building, Seminar Room 423

First published: 25 February 2019