native repl

1.0.0

A portable, native, drop-in REPL for interactive command lines.

Table of Contents

About native-repl

This library lets you quickly and easily build customisable REPLs, including debuggers and so on. It provides nice defaults, a command system, and a plethora of debugging features like source viewing, frame restarting, and so forth.

If you ever find yourself needing or building a REPL, consider using the protocols from this library instead. By default it depends on no specific terminal or output features, instead being implemented purely with native Lisp character streams – hence the name.

However, building a more capable REPL that makes use of advanced terminal or graphical capabilities is of course also possible by hooking into the system and customising the input and output handling functions.

How To

The basic quick entry is to just run (org.shirakumo.native-repl:run T). This will provide a REPL with sane defaults and a nice presentation for a Unicode capable output stream. If you'd like to customise the output, you can instead subclass standard-repl, implement methods on its various IO functions, and call run on an instance of your class. The debugger is similarly extensible, by subclassing unicode-debugger and binding it via with-debugger.

See the respective classes' docstrings for more hints on the involved functions, how they work, and how you might override their default behaviour to suit your needs.

System Information

1.0.0
Yukari Hafner
zlib

Definition Index