That's a very good question. I've stated my opinion in another post
that [incr tcl] does provide enough "module" primitives to at the
very least blunt the "can't deal with large systems" objection.
But I must admit, I've only written a couple hundred lines of tcl so
far. The major basis for my opinion is my experience is using a
philosophically-tcl-like interpreter to write a CM system. This CM
system isn't all that large, as large goes nowadays. Only ~3 KLOC.
But I don't see any fundamental problem (given either autoload or undump
to ease startup overhead) with code in the many hundreds of KLOC. Once
you can partition your namespace, whether with perl packages, or itcl
classes, or just about *any*thing, you're pretty much as well off as any
other of the common notations, decompositionability-wise.
For example, that 3 KLOC of scripts, with only classes and procs
as the structuring primitives, comes in lots of little roughly-50-KLOC
(or smaller) chunks, each of which interacts with the others fairly cleanly.
Therefore, I expect exactly similar strategies to work in tcl/itcl.
-- Wayne Throop firstname.lastname@example.org email@example.com