My plan was * basics of stack languages - some simple arithmetic, etc (all demonstrated in the listener) * dynamic types (illustrated by pushing strings and numbers onto the stack) * a slightly larger example: fibonacci (which naturally leads into quotations) * That's a bit messy, so let's refactor it to use dataflow combinators * 10 [0,b] [ fib ] map, brief mention of the sequence protocol * [ 40 [0,b] [ fib ] map ] time, hmm that's a bit slow (around 10s on my machine), let's memoize it * What is MEMO:? Brief discussion of parsing words and the ability to define custom syntax for new types of literals, code for { and H{ * A more impressive example of parsing words: the regex vocabulary. * If time (yeah, right), a quick discussion of the compiler's architecture and what optimizations it does. I'd really like to talk about parsing words, because I think they're hella cool, but I suspect my colleagues will be most interested in the compiler stuff.