4 REPL: the “top level”
SLIME uses a custom Read-Eval-Print Loop (REPL, also known as a
“top level”). The REPL user-interface is written in Emacs Lisp,
which gives more Emacs-integration than the traditional
comint-based Lisp interaction:
- Conditions signalled in REPL expressions are debugged with SLDB.
- Return values are distinguished from printed output by separate Emacs
faces (colours).
- Emacs manages the REPL prompt with markers. This ensures that Lisp
output is inserted in the right place, and doesn't get mixed up with
user input.