[VTK ARB] TCL/TK: is it needed anymore in VTK?

Andrew Maclean andrew.amaclean at gmail.com
Wed Jul 27 22:10:44 EDT 2011


Hi All,
This is just for discussion and it was prompted by a throw-away comment by
someone in the last VTK ARB Meeting regarding TCL.

So:
In the beginning ... when VTK was just a baby (and a lot of you at Kitware
were still in primary school!), TCL was really essential and useful because
at that time there were no other rapid development/prototyping languages
that were cross-platform and easy to use. So at that time (late 90's early
2000's) TCL was really great in that you could rapidly prototype something
and then code in C++. Yes I know that Python was around at that time but TCL
usage was more widespread.

Now... we have Python and using Python is really convenient because the
transition to C++ and or Java is relatively simple.

I know that there are still tests and examples that use TCL in the VTK tree
but lots of these have moved to C++.
Also if you look in wikiexamples, there are 6 tcl examples vs around 59
python examples, 11 java and lots and lots of C++ examples. So to me this is
saying that TCL is fading into obscurity. You could argue on
these figures that Java is not doing so well either but good Java
programmers can easily convert C++ to Java so I suspect Java programmers
just use the C++ examples.

>From my own experience I have found it is far simpler to prototype in Python
and then develop in C++. I used to use TCL (because nothing else was around
in the old days), but switched to Python because I found that students and
coders were more able to use Python than TCL mainly because of syntax
issues. The main point is that the syntax of Python is modern but TCL is
not.

Is there a really strong reason for supporting TCL in the future?

I have no issues with Java and Python and our efforts should go to
supporting these two languages. I acknowledge that there is an Achilles heel
in Python in that Python 3+ is different from 2.x but you can work around
these issues and I am seeing some development now moving off 2.x to version
3.x. However the Python 3.x api seems to be closer to C++ than the 2.x
versions so in the future more programmers will move to it.

Regards
  Andrew

-- 
___________________________________________
Andrew J. P. Maclean
Australian Centre for Field Robotics (ACFR)
The Rose Street Building J04
The University of Sydney  2006  NSW
AUSTRALIA
Ph: +61 2 9351 3283
Fax: +61 2 9351 7474
URL: http://www.acfr.usyd.edu.au/
___________________________________________
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/arb/attachments/20110728/0c88f268/attachment.html>


More information about the Arb mailing list