How to do Pattern Matching in Common Lisp

I think you may want the CL-Unification library: http://common-lisp.net/project/cl-unification/


I don't want to short circuit any learning you need to do for school (if that is the context in which this project is necessitated), but you could study the cl-ppcre library, http://weitz.de/cl-ppcre/, to see how an experienced Lisper does it. You could download the source and study it to understand. I would also second the book by Norvig, http://norvig.com/paip.html, mentioned above. You can learn so much from that book.


Simple pattern matching functionality is explained in various Lisp books.

  • Lisp, 3rd edition, Winston/Horn

  • Paradigms of Artificial Intelligence Programming, Case Studies in Common Lisp, Peter Norvig

and others.

Above books explain implementing pattern matching in Lisp very well.

Libraries exist, for example trivia, cl-match, and various others.