Can be used to access parts of an itcl object, even if it is private. This seems very dangerous to me - perhaps you should consider not using this. [[This is used frequently - someone want to explain why and when it is needed?]] Isn't this just the Itcl counterpart to [namespace code] ? [GWM] The namespace code page says that it is a constructor for [namespace inscope]; inscope says "This command is not expected to be used directly by programmers". Thus I would expect that itcl::code should also not be used by (end user) programmers, although the construct might be used in supplied Tcl packages. The purpose of declaring a variable 'private' is to assure the programmer that there can be no unexpected modifications of the variable other than through the class interface methods. [APW] My use of itcl::code is when I have a callback for example for a widget and I want to execute that callback in the "environment" of an itcl class method even if that method is not public. That normally means, that I also install the callback from within that "environment". [GWM] I would think that any callback should be a public member as it is being accessed from outside the class (via the event handler). Here is my short example of creating a class which creates a button and handles its callbacks. Each button is a separate object and can be extended to carry any other data specific to that button's callback. Note that the callback command must be in "" so that the parameter $this is substituted at the object/callback creation time. package require Itcl itcl::class hellobtn { public variable name "No-one" constructor {{frame ""}} { pack [ button $frame.hbtn -text "Hello World" -command "$this greet $frame.hbtn" ] } method greet {btn} { $btn config -background red -text $name } } foreach btn {"Don't" Press This Button} { pack [frame .f$btn] hellobtn h$btn .f$btn h$btn configure -name "$btn" } ---- [Category Command] part of the [itcl] extension [Category Object Orientation]