Work at SourceForge, help us to make it a better place! We have an immediate need for a Support Technician in our San Francisco or Denver office.

Close

Commit [ea1220] clos-typechecking-branch Maximize Restore History

0.8.18.11.clos-typechecking.1:

Initial checkin of typechecking code in PCL.

There are still some cases #+niled out in the
clos-typechecking.impure.lisp test file which fail, for reasons
moderately unknown;

No sanity-checking is done on the types at defclass type; this
is particularly bad for compound function types;

My recollection is a bit hazy but I think I only implemented
typechecking in those cases where there wouldn't be a full
call to typep at runtime. This should be checked (as well as
other performance implications). Ideally untyped slots would
have no performance impact at all.

Teaching the compiler to infer types might be tricky, because of
the natural dynamicity of CLOS.

Christophe Rhodes Christophe Rhodes 2005-01-03

added tests/clos-typechecking.impure.lisp
changed src/pcl/ctor.lisp
changed src/pcl/dfun.lisp
changed src/pcl/slots-boot.lisp
changed src/pcl/slots.lisp
changed src/pcl/std-class.lisp
changed src/pcl/vector.lisp
changed tests/mop.impure-cload.lisp
changed version.lisp-expr
tests/clos-typechecking.impure.lisp Diff Switch to side-by-side view
Loading...
src/pcl/ctor.lisp Diff Switch to side-by-side view
Loading...
src/pcl/dfun.lisp Diff Switch to side-by-side view
Loading...
src/pcl/slots-boot.lisp Diff Switch to side-by-side view
Loading...
src/pcl/slots.lisp Diff Switch to side-by-side view
Loading...
src/pcl/std-class.lisp Diff Switch to side-by-side view
Loading...
src/pcl/vector.lisp Diff Switch to side-by-side view
Loading...
tests/mop.impure-cload.lisp Diff Switch to side-by-side view
Loading...
version.lisp-expr Diff Switch to side-by-side view
Loading...