Custom REPL in Clojure
A read-eval-print loop (REPL) is an interactive environment that reacts to user-input. REPL-driven development is a very interactive programming style with a short feedback cycle enabling developers to evolve their projects and try new features quickly.
Tools like MatLab, RStudio, Gnu Octave are REPL-based because one of their major use-cases is (scientific) experimentation and exploration for which short feedback cycles are essential. For example, imagine a data-scientist has the task of correlating data samples in a meaningful way.