There's a lot of language semantics which make the REPL convenient to write interesting amounts of code in, Gilad Bracha details some in <https://blog.bracha.org/primordialsoup.html?snapshot=Amplefo...> (with the message reflected in the medium, embedding the Newspeak IDE in the document for examples). It's unrelated to compiling or interpreting; many Common Lisp implementations will compile code from the REPL too.