<p>Hi, First of all I'm new to Tcl. I've been reading around it for the past 10 days or so, and I like it very much. I saw there were lots of OO implementations on top of it, which is kind of mind-blowing when one is used to languages that have 'the-one-true-way' to do OO.<br>
</p><p>In the languages I've learned in the past quite often OO just seemed to get in the way. However, I've finally got to the point in my programming development where I'm feeling restricted by languages like Python and Java. Hence my delight at re-discovering Tcl for myself.</p>
<p>When I did a quick survey of the OO implementations in Tcl, I was immediately drawn to OTcl, and then disappointed to see it hadn't been enhanced over the last decade. Until I discovered XOTcl :-) This seems to me to be the most power OO system I've looked at - as powerful as Smalltalk, only for me Tcl is a more amenable language.</p>
<p>I'm using Artur's 0.83 image of XOTclIDE (which has XOTcl 1.6 bundled inside it). Of course, I'm really enjoying Artur's IDE. I finally feel like I've got the right combination of language and toolset to extend my programming ability. I am so grateful that XOTcl and the IDE have been made publicly available.</p>
<p>However, following the main XOTcl tutorial (<a href="http://media.wu-wien.ac.at/doc/tutorial.html">http://media.wu-wien.ac.at/doc/tutorial.html</a>) in the IDE, I've got a problem. After running 'do it' on each stage of the tutorial, when I get to this line:</p>
<p>set fb [bayernMunich newPlayer -name "Franz Beckenbauer" \<br> -playerRole PLAYER]<br></p><p>I get an error. Here's the stack trace:</p><p>::bayernMunich::__#WZ: unable to dispatch method 'name' during '::bayernMunich::__#WZ name'<br>
::bayernMunich::__#WZ ::xotcl::Object->configure<br> ::Player ::xotcl::Class->create<br> ::Player ::xotcl::Class->new<br> invoked from within<br>"Player new -childof ::bayernMunich -name {Franz Beckenbauer} -playerRole PLAYER"<br>
("eval" body line 1)<br> invoked from within<br>"eval Player new -childof [self] $args"<br> (procedure "newPlayer" line 5)<br> ::bayernMunich ::SoccerTeam->newPlayer<br> invoked from within<br>
"bayernMunich newPlayer -name "Franz Beckenbauer" \<br> -playerRole PLAYER"<br> (in namespace eval "::" script line 1)<br> invoked from within<br>"namespace eval :: $string"<br>
(procedure "evalString" line 3)<br> ::IDE::System->evalString<br> invoked from within<br>"IDE::System evalString $string"<br> (procedure "evalString" line 3)<br> ::xotcl::__#HM::@editor ::IDE::Editor->evalString<br>
invoked from within<br>"my evalString $sel"<br> (procedure "evalSelection" line 5)<br> ::xotcl::__#HM::@editor ::IDE::Editor->evalSelection<br> invoked from within<br>"::xotcl::__#HM::@editor evalSelection"<br>
invoked from within<br>".workspace1.#workspace1#mb.#workspace1#mb#menu8 invoke active"<br> ("uplevel" body line 1)<br> invoked from within<br>"uplevel #0 [list $w invoke active]"<br>
(procedure "tk::MenuInvoke" line 50)<br> invoked from within<br>"tk::MenuInvoke .workspace1.#workspace1#mb.#workspace1#mb#menu8 1"<br> (command bound to event)<br><br>I'm not sure if this is because XOTcl has changed since the tutorial was written, or if it is because I'm just running through the tutorial in the workspace. <br>
</p><p>Regards, Bernard</p><p><br></p>