I know that many on this list will be interested in the following TIP just propsed:
TIP #257: Object Orientation for Tcl http://www.tcl.tk/cgi-bin/tct/tip/257
This is indeed based on xotcl, but it is *not* xotcl. There are good reasons for this overall (but not necessarily for each individual change ;) ). I would like xotcl users who are interested to please read this TIP carefully, but to bear a few items in mind:
1. We know that syntax will change. Some is terminology, and not all features are being adopted. This is not intended to be a TIP to include all of xotcl, but rather to provide a well featured oo:: base. itcl, snit and whatever isn't included from xotcl should be easily built on this base. At the same time, xotcl as an independent code base will continue to work just fine.
2. Not all Tcl users are OO lovers. Some are just OO agnostic and want to remain that way (like all the non-CS technical folks). For those who like OO, most come from OO worlds dominated by Java. Terminology that they will be familiar with is important. At the same time, we want to create the best system for Tcl (and Tcl is better than Java). The oo::tcl approach at least tries to address this without losing many of the benefits of XoTcl.
3. Megawidget support - whatever the solution it absolutely must be consistent with the goals of bringing a standard megawidget facility to Tk. I personally use snit::widget for this, with its delegation based system. I have not seen any other system come close to its ease of megawidget development (including xotcl based ones). Many of the large systems in Tcl are Tk-based, and they will benefit greatly from standardized OO. However, if the system isn't "Tk friendly", it will be rejected.
I'm sure there are lots of other good, pithy comments I could make, but I'll let you guys (and gals) digest the basics first.
Regards,
Jeff Hobbs, The Tcl Guy http://www.ActiveState.com/, a division of Sophos