Hi Guys - <br><br>As one of the olde timey tcl guys, I'd agree with Andrew's assessment that supporting tcl in the future is not required and should be considered for the chopping block for VTK 6.<br><br>FWIW, the current development version of slicer (version 4, to be released this year) relies only on the vtk python wrappings. For most purposes, the differences between python and tcl are pretty minimal - but the big thing python has is numpy and the ability to get at image/poly data as numpy arrays. Now with SimplyITK's python bindings it is becoming possible to move bulk data around between packages in very nice ways.<br>
<br>For those who are interested, the last vestiges of tcl in slicer are supported by an adapter layer which uses tkinter and a custom package called tpycl (python inside tcl - meant to be pronounced, with a sigh and a roll of the eyes as "typical!"). With typcl, big chunks of slicer code written for tcl wrapped vtk can be run unchanged against a python wrapped vtk. This is used to delay the task of porting/debugging legacy the Editor and the EMSegmenter.<br>
<br><a href="http://viewvc.slicer.org/viewvc.cgi/Slicer4/trunk/Base/Python/tpycl/">http://viewvc.slicer.org/viewvc.cgi/Slicer4/trunk/Base/Python/tpycl/</a><br><br>This layer is for backwards compatibility only - nobody is using it for new development.<br>
<br>-Steve<br><br><div class="gmail_quote">On Wed, Jul 27, 2011 at 11:40 PM, Andrew Maclean <span dir="ltr"><<a href="mailto:andrew.amaclean@gmail.com">andrew.amaclean@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<div>Hi Will,</div><div><br></div>I have just now had a look at slicer and see what you mean.<div><br></div><div>Regards</div><div> Andrew</div><div><div><div></div><div class="h5"><br><br><div class="gmail_quote">On Thu, Jul 28, 2011 at 1:36 PM, Will Schroeder <span dir="ltr"><<a href="mailto:will.schroeder@kitware.com" target="_blank">will.schroeder@kitware.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">Andrew-<br>
<br>
I see your point and agree, I'm thinking that applications like<br>
Slicer, which at one time had large dependencies on Tcl, would not be<br>
happy (although this is fast changing). So if this were to occur it<br>
would have to be staged over a very long time, probably after some of<br>
us older guys bite the big one :-)<br>
<br>
W<br>
<div><div></div><div><br>
On Wed, Jul 27, 2011 at 10:10 PM, Andrew Maclean<br>
<<a href="mailto:andrew.amaclean@gmail.com" target="_blank">andrew.amaclean@gmail.com</a>> wrote:<br>
> Hi All,<br>
> This is just for discussion and it was prompted by a throw-away comment by<br>
> someone in the last VTK ARB Meeting regarding TCL.<br>
> So:<br>
> In the beginning ... when VTK was just a baby (and a lot of you at Kitware<br>
> were still in primary school!), TCL was really essential and useful because<br>
> at that time there were no other rapid development/prototyping languages<br>
> that were cross-platform and easy to use. So at that time (late 90's early<br>
> 2000's) TCL was really great in that you could rapidly prototype something<br>
> and then code in C++. Yes I know that Python was around at that time but TCL<br>
> usage was more widespread.<br>
> Now... we have Python and using Python is really convenient because the<br>
> transition to C++ and or Java is relatively simple.<br>
> I know that there are still tests and examples that use TCL in the VTK tree<br>
> but lots of these have moved to C++.<br>
> Also if you look in wikiexamples, there are 6 tcl examples vs around 59<br>
> python examples, 11 java and lots and lots of C++ examples. So to me this is<br>
> saying that TCL is fading into obscurity. You could argue on<br>
> these figures that Java is not doing so well either but good Java<br>
> programmers can easily convert C++ to Java so I suspect Java programmers<br>
> just use the C++ examples.<br>
> From my own experience I have found it is far simpler to prototype in Python<br>
> and then develop in C++. I used to use TCL (because nothing else was around<br>
> in the old days), but switched to Python because I found that students and<br>
> coders were more able to use Python than TCL mainly because of syntax<br>
> issues. The main point is that the syntax of Python is modern but TCL is<br>
> not.<br>
> Is there a really strong reason for supporting TCL in the future?<br>
><br>
> I have no issues with Java and Python and our efforts should go to<br>
> supporting these two languages. I acknowledge that there is an Achilles heel<br>
> in Python in that Python 3+ is different from 2.x but you can work around<br>
> these issues and I am seeing some development now moving off 2.x to version<br>
> 3.x. However the Python 3.x api seems to be closer to C++ than the 2.x<br>
> versions so in the future more programmers will move to it.<br>
> Regards<br>
> Andrew<br>
> --<br>
> ___________________________________________<br>
> Andrew J. P. Maclean<br>
> Australian Centre for Field Robotics (ACFR)<br>
> The Rose Street Building J04<br>
> The University of Sydney 2006 NSW<br>
> AUSTRALIA<br>
> Ph: <a href="tel:%2B61%202%209351%203283" value="+61293513283" target="_blank">+61 2 9351 3283</a><br>
> Fax: <a href="tel:%2B61%202%209351%207474" value="+61293517474" target="_blank">+61 2 9351 7474</a><br>
> URL: <a href="http://www.acfr.usyd.edu.au/" target="_blank">http://www.acfr.usyd.edu.au/</a><br>
> ___________________________________________<br>
><br>
</div></div>> _______________________________________________<br>
> Arb mailing list<br>
> <a href="mailto:Arb@vtk.org" target="_blank">Arb@vtk.org</a><br>
> <a href="http://public.kitware.com/cgi-bin/mailman/listinfo/arb" target="_blank">http://public.kitware.com/cgi-bin/mailman/listinfo/arb</a><br>
><br>
><br>
<font color="#888888"><br>
<br>
<br>
--<br>
William J. Schroeder, PhD<br>
Kitware, Inc.<br>
28 Corporate Drive<br>
Clifton Park, NY 12065<br>
<a href="mailto:will.schroeder@kitware.com" target="_blank">will.schroeder@kitware.com</a><br>
<a href="http://www.kitware.com" target="_blank">http://www.kitware.com</a><br>
<a href="tel:%28518%29%20881-4902" value="+15188814902" target="_blank">(518) 881-4902</a><br>
</font></blockquote></div><br><br clear="all"><br></div></div>-- <br><div class="im">___________________________________________<br>Andrew J. P. Maclean<br>Australian Centre for Field Robotics (ACFR)<br>The Rose Street Building J04<br>
The University of Sydney 2006 NSW<br>
AUSTRALIA<br>Ph: <a href="tel:%2B61%202%209351%203283" value="+61293513283" target="_blank">+61 2 9351 3283</a><br>Fax: <a href="tel:%2B61%202%209351%207474" value="+61293517474" target="_blank">+61 2 9351 7474</a><br>URL: <a href="http://www.acfr.usyd.edu.au/" target="_blank">http://www.acfr.usyd.edu.au/</a><br>
___________________________________________<br>
</div></div>
<br>_______________________________________________<br>
Arb mailing list<br>
<a href="mailto:Arb@vtk.org">Arb@vtk.org</a><br>
<a href="http://public.kitware.com/cgi-bin/mailman/listinfo/arb" target="_blank">http://public.kitware.com/cgi-bin/mailman/listinfo/arb</a><br>
<br></blockquote></div><br>