Hi, Kurt Stephens <[EMAIL PROTECTED]> writes:
> Preliminary results as applied to libid here: > > http://kurtstephens.com/node/60 Cool! BTW, I suggest you change the link to my Ocean page to the proper spot in the Wiki that also explains where to get the original sources (Ocean is just a branch of COLA, not the original, and it probably will lose its identity once Ian figures out the best way to host user contributions): http://vpri.org/fonc_wiki/index.php/Sources > I think there might be some usefulness in having code compiled with > different word tag schemes (or none at all!) depending on how code is > behaving dynamically. > > I'm considering making tags parameterized in idc and further up the > chain. That's an interesting idea. In my way of thinking, which you may have read about in the archives, http://vpri.org/mailman/private/fonc/2008/000556.html (see the "OOP or non-OOP" section, you can ignore the rest), idc already has two built in static types: the tagged object pointer and an opaque word. It doesn't use this information for much except a convention for what a method takes or returns, as it punts to the Boehm GC for conservative collection. It would be interesting if somehow your "parameterized tags" could be the basis for an extensible static type system for idc. That would probably mean adding proper signatures and casts (maybe my "_" method idea would work as a typecast operator, but with an argument that specified the destination static type). The advantage would be to allow different tag types to coexist in the same application using a single GC. I looked briefly at Strongtalk, but it seemed to me that it didn't actually perform type erasure, the types were more just like contracts on the same underlying oop representation. It may be nice to borrow some of their syntax, if possible. Making Jolt understand a type system could certainly be interesting, too. Ideally, there would be some way to implement things so that Jolt needs to know only a tiny bit about types, but precise GC would still be possible. Anyway, I'm not entirely certain how this would work out or if its entirely too much work to be worthwhile for you, but I thought I'd throw the suggestion out there. You did say "Feedback?" after all. ;) Good luck, and I'm interested to hear about your future experiments! -- Michael FIG <[EMAIL PROTECTED]> //\ http://michael.fig.org/ \// _______________________________________________ fonc mailing list [email protected] http://vpri.org/mailman/listinfo/fonc
