compiles with CLOS