Hi,
From: "H. Simpson" <
[email protected]>
Subject: Re: Why does Ruby use both tcl83.dll and tk83.dll (instead of just tk83.dll)?
Date: Tue, 3 Aug 2004 12:21:34 +0900
That is a 'ptk' library. It's similar but NOT same as a 'Tk'
library, I think. If linking 'ptk', it should be called 'Ruby/ptk'.
# I never oppose the creation of 'Ruby/ptk'.
I think the overhead is not serious, because almost all part of
Ruby/Tk don't depend on Tcl's command line parser.
Maybe, the cost for converting Ruby/Tk's arguments to Tcl/Tk's
arguments is heavier than the overhead.
If you cannot accept the cost, you can bypass the converting step
in the bottle neck part (Please check ext/tcltklib/demo/lines?.rb).
I hate losing the benefits rather than accepting the overhead.
I'm advocating that the merits of using pure Tcl/Tk libraries are
(1) you can use the newest features at the same time of the new
Tcl/Tk release, and
(2) you can use almost all of Tcl/Tk extensions under Ruby/Tk.
By this reason, I'll not replace Tcl/Tk libraries to ptk libraries.
To receive the second merit, Ruby 1.8.2 includes the wrapper libraries
for some Tcl/Tk extensions (e.g. Tcllib, IWidgets, BWidgets, TkTable,
vu, and so on; see ext/tk/lib/tkextlib/SUPPORT_STATUS). Of course,
to use those libraries, those extensions must work on your Tcl/Tk.
However, many of current target extensions of the wrappers are
included the ActiveTcl binary package (see
http://www.tcl.tk/ and
http://www.activestate.com/Products/ActiveTcl/).
If your tcltklib.so is compiled with libraries of the ActiveTcl
package, you can use those extensions (charts, tables, calendar,
tree, tab-note, and so on) with those wrappers.