Super Monadic Über Go-into : parser combinators for Common Lisp
Common Lisp
Latest commit 3da6123 Apr 21, 2016 @drewc Merge pull request #8 from fiddlerwoaroof/master
Add a restart for better error-recovery

SMUG : Super Monadic Über Go-into

SMUG is a library for parsing text, based on monadic parser combinators. Using a simple technique from the functional programming camp, SMUG makes it simple to create quick extensible recursive descent parsers without funky syntax or impenetrable macrology.


  • parsers are first class values written in basic lisp
  • non-deterministic infinite look-ahead
  • easy to learn, easy to use
  • extensible input protocol : parse strings, streams, lists etc
  • in-depth tutorial : no previous experience required.

Download and Install

cd ~/quicklisp/local-projects
git clone
(ql:quickload :smug)


See doc/

Support or


The MIT License (MIT)

Copyright (c) 2010-2015 Drew Crampsie