I have a billiard ball simulator which is written in vanilla scheme plus a set of very simple macros which are used to create an object based abstraction for billiard balls and walls. These macros shoulb be convertable to functions in less than 1 hours work. Would you like me to mail you a copy of this code? Morry Katz katz@polya.stanford.edu