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

Re: operation->procedure

I have implemented a first pass at Zetalisp flavors in T which is 
currently being augmented and reimplemented (I hope) by some
people here at UCLA.  The main trouble I've encountered is that
there is no easy way to implement flavors efficiently.  The current
version does provide instance variables and incremental method
definition, redefinition, and undefinition but will not work
for large systems.  There is also some minor difficulty in getting
code which uses this stuff to compile nicely.

A better way to go about all of this, which is being investigated,
is to have the code which defines methods (DEFMETHOD in Zetalisp)
know exactly what the interpreter and compiler know so that it
can detect the occurences of instances variables being used freely
in the method body.  These occurences can then be expanded into
some kind of runtime lookup.  It is then possible to separately
compile the methods as first-class functions.

The only problem I see here right now is that there might be
some naming conflicts for the function definitions when two
objects have methods with the same name.  Some kind of name
mapping based on the flavor would solve this problem though.

Comments and suggestions are heartily invited.