What makes a good REPL?
With fast compiling languages a unit test is not for off from being a REPL. In Java I use JUnit as a REPL.<p>Actually I prefer unit tests over a REPL the same reason I prefer bash scripts over one liners or SQL scripts instead of typing into the interpreter... I don't like the ephemeral nature of REPLs.<p>Also with true REPLs unlike the debug unit test approach I mention with Java you really need the language to be dynamic. I'm not entirely sure why but static type languages are not very good at allowing code modification while running (I mean I have ideas but I don't know precisely if there is an actual theoretical limitation).<p>I guess I prefer static analysis over the complete ability to modify the code base while running.<p>Only add my 2 cents because the article doesn't mention any negatives to REPLs.