You are previewing Land of Lisp.

Land of Lisp

Cover of Land of Lisp by Conrad Barski M.D. Published by No Starch Press
O'Reilly logo

Adding a Custom Interface to Our Game Engine

So far, we’ve been using the Lisp REPL to enter our game commands. It’s amazing how well this works for prototyping our game. But now that you’ve gained an understanding of the basic Common Lisp input and output commands, we can begin to put in place our own custom text game interface, which will be better suited for interacting with the player.

Setting Up a Custom REPL

Creating your own REPL in Lisp is almost laughably easy. Here’s a simple custom REPL for our game, which lets us call the look command in exactly the same way as the standard REPL did:

> (defun game-repl ()
     (loop (print (eval (read)))))
GAME-REPL
> (game-repl)
(look) (YOU ARE IN THE LIVING-ROOM. A WIZARD IS SNORING LOUDLY ON THE COUCH. ...

The best content for your career. Discover unlimited learning on demand for around $1/day.