Transformation Patterns Optimization:
(defpatterns 'opt '( ((+ ?x 0) ?x) ((* ?x 0) 0) ((* ?x 1) ?x) ((:= ?x (+ ?x 1)) (incf ?x)) ))
Language translation:
(defpatterns 'lisptoc '( ((aref ?x ?y) ("" ?x "[" ?y "]")) ((incf ?x) ("++" ?x)) ((+ ?x ?y) ("(" ?x " + " ?y ")")) ((= ?x ?y) ("(" ?x " == " ?y ")")) ((and ?x ?y) ("(" ?x " && " ?y ")")) ((if ?c ?s1 ?s2) ("if (" ?c ")" #\Tab #\Return ?s1 #\Return ?s2))