[Insight-developers] Name Conflicts

Brad King brad.king@kitware.com
Wed, 4 Sep 2002 16:55:12 -0400 (EDT)


Hello,

It seems that "itk" is not the best choice of name for our
namespace/library/toolkit.  There is a project "[incr Tk]" that provides
object-oriented bindings to the Tk widget set in Tcl.  The project
homepage is

http://incrtcl.sourceforge.net/itk/

This project has been around much longer, and is probably used by a wider
audience than our toolkit.

There is also a GUI front-end to GDB called "Insight":

http://sources.redhat.com/insight/

With the combination of these two projects, we lose the following
potential install locations on unix:

PREFIX/bin/insight
PREFIX/lib/itk
PREFIX/lib/insight
PREFIX/doc/itk
PREFIX/doc/insight
PREFIX/man/man*/itk
PREFIX/man/man*/insight
PREFIX/share/doc/itk
PREFIX/share/doc/insight
...

I suggest we simply use "InsightToolkit" as the package name.  We can
still use "itktcl" as our executable name for Tcl bindings, but since our
Tcl bindings work from tclsh and wish, we may not even need such an
executable unless we want static linking.

The problems get worse when we get to Tcl bindings.  Incr Tk uses the
package name "Itk" and the Tcl namespace "itk::".  However, it uses only
one command "itk::usual", and then has several Incr Tcl classes with names
like "itk::Widget" that are not actually commands but still take up the
namespace visually.

We can change the Tcl package name to "Insight" and then use the
"insight::"  namespace, but then code in C++ and code in Tcl will use a
different namespace.

Ideas?
-Brad