[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

*To*: Letovsky@YALE.ARPA*Subject*: Re: Diverse Subjects*From*: Jonathan Rees <Rees@YALE.ARPA>*Date*: Wed ,28 Mar 84 13:52:22 EDT*Cc*: T-Discussion@YALE.ARPA*In-reply-to*: Stanley Letovsky <Letovsky>, Tue, 27 Mar 84 08:33:06 EST

Date: Tue, 27 Mar 84 08:33:06 EST From: Stanley Letovsky <Letovsky> 1) Should T objects have default method for handling unknown operations? ... This might be a good idea, but I wonder if it might make the correct implementation of various potential optimizations such as method caching more difficult. Doing this would suddenly make T's operation system even more unconstrained and hard to understand than it already is. 3) I notice the meta-circular evaluator in the T manual treats apply as primitve. I have taken the li berty of redressing this lack. Comments on semantic correctness will be appreciated. ... This merely begs the question of how OBJECT, OPERATION, and JOIN, which seem to me to be much more complicated than LAMBDA, are implemented. The chapter on operations gives an idea of how to do them in terms of LAMBDA and two primitive procedures. Object creation must bottom out somewhere, and in T OBJECT is theoretically sufficient to create everything, including pairs, numbers, symbols, and closures, so maybe this is the right way to go. However, given just two primitive procedures, *OBJECT and GET-HANDLER, LAMBDA becomes sufficient. The usual route in meta-circular LISP interpreters is to take CONS, CAR, and CDR as primitives and implement LAMBDA in terms of those; you should consider that possibility. Also note that APPLY could be defined as follows: (DEFINE (APPLY PROC L) ;ignore extended case - you get the idea (CASE (LENGTH L) ((0) (PROC)) ((1) (PROC (CAR L))) ((2) (PROC (CAR L) (CADR L))) ((3) (PROC (CAR L) (CADR L) (CADDR L))) ((4) (PROC (CAR L) (CADR L) (CADDR L) (CADDDR L))) ...)) if you could manage to fill in the infinite "..." somehow.

- Prev by Date:
**Re: Diverse Subjects** - Next by Date:
**INTEGRABLE PROCEDURES / LIGHTWEIGHT PROCESSES** - Previous by thread:
**Re: Diverse Subjects** - Next by thread:
**INTEGRABLE PROCEDURES / LIGHTWEIGHT PROCESSES** - Index(es):