Re: Anyone try running Insight/gdbtk thru tcl2perl ?

Vadim Konovalov <[email protected]>
Newsgroups gmane.comp.lang.perl.tk
Message-ID <1103525673.3618.27.camel@localhost>
> >> Jeff Hobbs has mentioned this on the clp.tk newsgroup recently,
> >> and mentioned Tcl::Tk was "80% compatible", which caused me to
> >> ask if he could enumerate the 20% thats currently missing.
> >> Perhaps you can provide that info ?
> >
> > In my understanding those 20% are:
> > - events %-something and Tk::Ev done differently so source-level 
> > compatibility lacks here: you must add few keystrokes  everywhere when 
> > "%" variables vere used.
> > - pure-perl perlTk widgets are not supported.
> > - Most widget methods are implemented, but not all of them. Addition 
> > of widget's method to Tcl::Tk is trivial but some of methods were just 
> > not caught at the moment. On the contrary, with Tcl::Tk you can work 
> > with perlTk syntax with widgets that are in Tcl/Tk but not in perlTk.  
> > (see http://www.vkonovalov.ru/perl-tcltk.htm as example, namely 
> > $bltgraph->elementCreate(qw/line1 -symbol triangle/,...) ) That said,  
> > with Tcl::Tk you get more methods compared to perlTk but not full 
> > perlTk coverage.
> 
> I've been meaning to look at the above more some time now.  Will do so 
> "real soon now", but lack of Perl mega-widgets is a show-stopper, no?

I think it is not *that* show-stopper.

With Tcl::Tk you can't use perlTk mega-widgets, but:
 - in some cases there exist Tcl/Tk widget with similar behaviour, so
you can just use it.
 - there exist a way to create pure-perl Tcl::Tk widgets, however it is
not documented (and not decided which interface to provide to end-user)

AFAIK mega-widgets in perlTk are borrowed from Tix. So Tcl::Tk could
implement same way. But, just because this Tix part  was highly reworked
when adopted to perlTk, it is  tricky to get exactly same behaviour in
Tcl::Tk.
It is easy to implement another way of mega-widgets, but it is tricky to
repeat exactly same behaviour.

Moreover, in Tcl/Tk not only Tix provides megawidgets, but also other
packages (Bwidgets, mkwidgets, and there are more, but I am not that
knowledgable).
So it was just simply undecided which way to go.

Speaking of "show-stoppers", to be honest, it was some of perlTk
show-stoppers that forced me to look into Tcl::Tk perl module, so I
removed dust from it and decided to go that way, those show-stoppers
are:
 - Unicode support (it was added relatively recently but I needed it
badly for quite long, at that time it was a show-stopper)
 - it is really hard to debug something program crashes in perlTk. I
(and not only I) posted here a program that causes core-dump, but of no
result. It is (relatively) easy to track down perl crash or tcl/tk crash
(and I did so) but it is a poain to do so in perlTk.

Some kind of summary from Tcl/Tk perspective is at
http://mini.net/tcl/2271 , feel free to add thoughtful additions
there...



-++**==--++**==--++**==--++**==--++**==--++**==--++**==
This message was posted through the Stanford campus mailing list
server.  If you wish to unsubscribe from this mailing list, send the
message body of "unsubscribe ptk" to [email protected]
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.