[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Binary data and set. & other things
I know that this might be much more than people were asking for, but I
have implemented an object system on top of Tcl. It most closely
resembles Self in its treatment of objects (prototype-based, multiple
inheritance, etc). The C library that implements the basic object
functionality is very small; methods are, of course, implemented as
hunks o Tcl code that are invoked in an interesting way :-) We are
still in the process of testing things out, mainly by building wrapper
"classes" (traits in Selfese) around the Tk widgets, writing a graphical
browser on top of these, and a couple other things. Preliminary testing
seems to indicate that the overhead is very small when compared to what
you get (never having to say "global" again, among other things). I use
the same method that Tk uses to give the world access to "binary" data
(e.g. objects): Tcl commands. I think this is a pretty good method to
use in general for this sort of problem in Tcl. Bind clientData to
whatever strange thing (array of floats, etc) you want, have one
function in C that all such data object commands get bound to, and
you're pretty much done. I intend to use the C side of my object system
to implement things like Hash tables, arrays, etc. in Tcl; in this case,
the Tcl side is already done, I just have to write some methods in C to
dick with the kinds of objects at hand.
If anyone is interested in the Basic Object System, please drop me a
line and I'll add you to a list. It should be beta-testing in a week or
two.
Cheers,
Sean Levy <snl@cs.cmu.edu>
nDim Project, Engineering Design Research Center
Carnegie Mellon University, Pittsburgh, PA