Slate is a self-hosted dynamic language based on prototypes and multi-dispatch. It melds the Smalltalk and Lisp traditions, while attempting to incorporate ideas and idioms from a variety of sources. Slate is being re-invented using Atomo as an incubator along with direction from Newspeak and functional programming.
Object-functional languages have a number of desirable properties and have proven very useful in practice. Unfortunately, the merger brings with it a raft of complexities, being the root of nearly all of Scala's infamous complexity. This talk will present a new framework for resolving these issue, based around the notion of statically-typed functional object prototypes.