From: "H. Simpson" Date: 2004-08-04T01:51:34+09:00 Subject: Re: Why does Ruby use both tcl83.dll and tk83.dll (instead of just tk83.dll)? Hidetoshi NAGAI wrote: > Hi, > > From: "H. Simpson" > 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 > Message-ID: > >>Seems that perl-tk somehow removed the Tcl part of Tk. > > > 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'. > > >>Hmmm. The compiled part of that project might be useful for other >>languages (like c/c++ or Ruby) to directly use Tk without the >>overhead+benefits of Tcl. > > > 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. I see! Thanks for explaining. The BWidgets look really nice so I'm glad you took that approach rather than something like ptk.