Abstract: The PLanCompS project has produced CBS, a language for specifying the formal semantics of software languages. CBS supports functions that can be called with an arbitrary number of arguments, a feature proven to be convenient for specifying software languages. Patterns with 'sequence variables' are used to define these functions.
In this talk we motivate sequence variables with examples taken from CBS and by a comparison to Java's varargs. We introduce conventional pattern matching as it is found in many declarative and functional programming languages. We extend conventional pattern matching to allow for sequence variables, and give a simple algorithm that enables implementation.
Pattern Matching with Sequence Variables
11 May 2016
CS Department, Royal Holloway, University of London