Improve schema generation performance on large schemas
authorFrancois-Rene Rideau <tunes@google.com>
Wed, 7 Nov 2012 23:40:50 +0000 (18:40 -0500)
committerFrancois-Rene Rideau <tunes@google.com>
Wed, 7 Nov 2012 23:40:50 +0000 (18:40 -0500)
commitae0414682bc6495e1dfa224bb5188fccb5889cb7
tree7e1d1619e3da7a6dca4d1bb59747e76f98cb9c8c
parent8f21cbcd874c2841e58fb264228529e19623560d
Improve schema generation performance on large schemas

Avoid SUBTYPEP during macroexpansion, it can be very expensive on SBCL.
Actually recognize LIST-OF:LIST-OF constructs.
In DEFINE-SCHEMA, don't nest the DEFMETHODs inside the LET,
this also can cause SBCL's control flow analysis to blow up.

Work done with Steven Spitz for QPX.

Tested: (asdf:test-system :cl-protobufs)
clos-transform.lisp
define-proto.lisp
utilities.lisp