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

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
added tests/clos-typechecking.impure.lisp
changed tests/mop.impure-cload.lisp
changed version.lisp-expr
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/clos-typechecking.impure.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...

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks