Path: utzoo!mnetor!uunet!husc6!necntc!ames!ucbcad!ucbvax!tekchips.tek.COM!adams From: adams@tekchips.tek.COM (Norman Adams) Newsgroups: comp.lang.scheme Subject: Object oriented programming in Scheme Message-ID: <8712212015.AA06929@tekchips.TEK.COM> Date: 21 Dec 87 20:15:32 GMT Sender: daemon@ucbvax.BERKELEY.EDU Organization: The ARPA Internet Lines: 32 ... I'd like to hear from anybody who has tried to implement major T facilities (namely: object/operation facility) in MacScheme. Lars Ericson ericson@csd16.nyu.edu We have been experimenting with an object system based on T's. We have a prototype implementation which we are evaluating, and we hope to have something interesting to say in a few months. If all goes well, there is some chance we will make source available for a sample implementation. For those not familiar with the T object system: I eschew zealotry, but I find the T approach (roughly closures + dispatch) more in the Scheme spirit than anything in the Flavors family. Our changes to the T object system are intended to make reasonably fast implementions possible. I would consider an implementation reasonably fast if time to send a message, do the method lookup, and pass control to the method, is less than the cost of 2 procedure calls in the worst case. Our prototype is almost portable Scheme. We also have a faster version that is quite specific to MacScheme. In a single, simple-minded benchmark, compared to Ulrich's SCOOPS for MacScheme: the slow version is 20% the speed, the faster version 2 or 3 times the speed (that's 5 procedure call times). I would guess that, a few lines of assembly code, in a few key places, are needed to make the MacScheme version "reasonably fast." Norman Adams Computer Research Lab Tektronix Labs -------