I get his point on type systems vs. live coding, but type checkers actually provide a form of dialog between programmer and compiler. You get a red squiggly line when you mess up! Even faster than hitting the REPL. It's like a reactive dataflow visualizing half of your program (the half that consists of type annotations.)<p>I think this is why I enjoy Haskell despite how annoying it is to debug. The compiler asks me questions, I know what's left to define. My dream would be some marriage of dependent types with automatically checked assertions, and a reactive, live coding environment.