[Graeme] Chapter 17, more type system tomfoolery