Technical Description
Research Team

LISSC is a Compiler for the toy imperative (or procedural) programming language LISS, that stands for Integers, Sequences and Sets.

At the beginning the language was conceived with pedagogical purposes, in the context of a Compilers Course. Nowadays it was recovered as a research project is the context of the Language processing group at University of Minho, to explore compiling techniques, generators and virtual machines.

LISSC was generated automatically from its Attribute Grammar using the Compiler Generator tool LISA. LISSC generates pseudo-code. In a first step, MSP (a very simple stack machine defined and used by us to teach assembly to beginners, in introductory courses on programming languages) was the target machine chosen (that virtual machine just supports simple LISS programs --- without subprograms, and pointers) and CoCoR/C# was the Compiler Generator choosen; the present version of LISSC generates VM code, now supporting full LISS programs.

{ danieladacruz, prh}

Copyright © 2006  Departamento de Informática - Universidade do Minho