For the best quality, click on the zoom button in the right corner.
You can also try the high quality version, or download the mp4 version.
Lightweight Language Processing in Kiama and Scala
Anthony M. Sloane
Kiama is a language processing library for the Scala programming language. The project aims to bring high-level language processing paradigms within the reach of Scala programmers. Kiama contains embedded domain-specific languages to support tree annotation via attribute grammars, tree transformation via strategy-based rewriting, and dynamic semantics via abstract state machines. In each case, the embedded languages closely resemble equivalent notations used in generator-based systems, but are much more lightweight since they require no generation phase other than compilation and can easily interoperate with each other or with other Scala code. This talk will provide an overview of Kiama's capabilities and implementation using a series of typical language processing examples.