1 #ifndef __Cons_h 2 #define __Cons_h 3 #include "SchemeObject.h" 4 5 @interface Cons: SchemeObject 6 { 7 SchemeObject *car, *cdr; 8 } 9 + (id) newWithCar: (SchemeObject *) a cdr: (SchemeObject *) d; 10 - (id) initWithCar: (SchemeObject *) a cdr: (SchemeObject *) d; 11 - (SchemeObject *) car; 12 - (void) car: (SchemeObject *) a; 13 - (SchemeObject *) cdr; 14 - (void) cdr: (SchemeObject *) d; 15 @end 16 17 @extern Cons *cons (SchemeObject *car, SchemeObject *cdr); 18 @extern BOOL isList (SchemeObject *ls); 19 @extern int length (SchemeObject *foo); 20 21 #endif //__Cons_h 22