Are there any good starting places for learning the necessary type theory to understand this stuff? I really like the idea of extensible row types, but struggle with trying to understand the research papers.
Types and Programming Languages by Pierce. Available online if you search for it. Expresso appears to be, more or less, an extension of the toy language implemented in that book.