From: Fernando Mato Mira
Subject: Type declarations and generic classes in CLOS - HOW??
Date: 
Message-ID: <1992Nov16.182518@disuns2.epfl.ch>
Let's say you have a class:
(defclass foo () ((x :accessor x :type number)))


and you would like to be able to do something like:
(proclaim (type (foo integer) an-instance))


so a smart LISP compiler can avoid type checking when you write:
(proclaim (type integer n))
(setf n (x an-instance))

How would you go about? It seems that generic classes (and the general issue of
type declarations - see article "Declaring types by association in CLOS")
have been overlooked in the design of CLOS.

I am trying to do VR, so every declaration counts.

I remember a paper by Luca Cardelli on an implementation of ML with a
higher-order type system. Shouldn't LISP have something like that to
stay at the cutting edge?

-- 
Fernando D. Mato Mira
Computer Graphics Lab			   "I must admit it, I have learned
Swiss Federal Institute of Technology	        some things from Eiffel"
········@di.epfl.ch

NeXTMail : ········@lignext.epfl.ch
FAX 	 : +41 (21) 693 - 5328