Lzpg4rrbrtgvbtizbzuy
SkillsCast

Workshop: Building Interpreters in Scala

10th December 2015 in London at Business Design Centre

There are 37 other SkillsCasts available from Scala eXchange 2015

SkillsCast coming soon.

This workshop will explore patterns for writing interpreters in Scala. It will start with basic untyped interpreters, and then cover monadic interpreters, GADTs, and free monads and applicatives as time and interest allows.

Interpreters aren't just for programming language enthusiasts---they are the pattern underlying many of the most fun and compelling applications of Scala, such as Twitter's Stitch and our own Doodle graphics library. An interpreter arises whenever you separate the description of a computation from the process that carries it out. This separation allows you to change the semantics of the program, for instance adding caching in Stitch or applying artistic effects in Doodle. In fact you can view almost all of the patterns in functional programming as variations of the theme of interpreters.

In this workshop you will learn the main ways of writing interpreters, covering as many methods as time allows. References to applications will be shared along the way, while working on a simple example to ground the theory.

Code and setup instructions are available in this Github repo

You should have a laptop, your development environment of choice, and a good level of understanding of Scala.

YOU MAY ALSO LIKE:

Workshop: Building Interpreters in Scala

Noel Welsh

Noel is a Scala consultant at Underscore, where he helps people produce better code using Scala. He has a background in machine learning, and an abiding passion for turning his current interests into conference talks.

SkillsCast

SkillsCast coming soon.

This workshop will explore patterns for writing interpreters in Scala. It will start with basic untyped interpreters, and then cover monadic interpreters, GADTs, and free monads and applicatives as time and interest allows.

Interpreters aren't just for programming language enthusiasts---they are the pattern underlying many of the most fun and compelling applications of Scala, such as Twitter's Stitch and our own Doodle graphics library. An interpreter arises whenever you separate the description of a computation from the process that carries it out. This separation allows you to change the semantics of the program, for instance adding caching in Stitch or applying artistic effects in Doodle. In fact you can view almost all of the patterns in functional programming as variations of the theme of interpreters.

In this workshop you will learn the main ways of writing interpreters, covering as many methods as time allows. References to applications will be shared along the way, while working on a simple example to ground the theory.

Code and setup instructions are available in this Github repo

You should have a laptop, your development environment of choice, and a good level of understanding of Scala.

YOU MAY ALSO LIKE:

About the Speaker

Workshop: Building Interpreters in Scala

Noel Welsh

Noel is a Scala consultant at Underscore, where he helps people produce better code using Scala. He has a background in machine learning, and an abiding passion for turning his current interests into conference talks.

Photos