Como fazer a correspondência de padrões no Common Lisp

Não faço ideia se existe uma função de correspondência de padrões para o Common Lisp, no entanto, tenho que fazer minha própria função. Não faço ideia do Lisp. Alguém pode alertar sobre o aprendizado do Lisp e, o mais importante, como proceder para fazer a correspondência de padrões no Lisp. Terei que passar por um padrão e um fato e dizer se eles correspondem. Um exemplo seria

(heroes (hitpoints=hp) (mana=m)) 

deve corresponder

(Morphling (hitpoints 435) (mana 260))

também deve poder fazer comparações numéricas se um número é maior ou menor. Como se outro herói mana fosse menos que Morphling.

questionAnswers(3)

yourAnswerToTheQuestion