From: Jean-Michel Pichavant on
ant wrote:
> Most of those don't use a GUI. But whenever I
> write a program that someone else is going to use, it has to have a
> GUI. Is that not true for most people?
>
>

In the industry, most of the people knows how to use a comand line. In
my company, 99% of the applications written in python have no GUI at
all. 1% being web interfaces anyway.
Developing & maintining a GUI has a tremendous cost compared to the
command line, for a small benifit.

JM
From: D'Arcy J.M. Cain on
On 09 Jun 2010 06:05:43 GMT
Steven D'Aprano <steve-REMOVE-THIS(a)cybersource.com.au> wrote:
> I think the only way to end this pointless discussion is this:
>
> "Hitler would have loved Tkinter!"

Sorry, "Quirk's Exception" to Godwin's Law says that you can't invoke
Godwin's Law on purpose.

--
D'Arcy J.M. Cain <darcy(a)druid.net> | Democracy is three wolves
http://www.druid.net/darcy/ | and a sheep voting on
+1 416 425 1212 (DoD#0082) (eNTP) | what's for dinner.
From: Martin P. Hellwig on
On 06/09/10 14:37, D'Arcy J.M. Cain wrote:
> On 09 Jun 2010 06:05:43 GMT
> Steven D'Aprano<steve-REMOVE-THIS(a)cybersource.com.au> wrote:
>> I think the only way to end this pointless discussion is this:
>>
>> "Hitler would have loved Tkinter!"
>
> Sorry, "Quirk's Exception" to Godwin's Law says that you can't invoke
> Godwin's Law on purpose.
>
How about a meta/meta reference if the poster would apologize now with
'Ich habe es nicht gewusst' ?

--
mph
From: Mark Roseman on
I'll venture to say that the path of least resistance (which includes
little or modest development effort) would be for Python to retain
Tkinter in the way it does now, but have Tkinter GUI's magically appear
less horrid.

Guess what? That's already happened. Newer versions of Tk (which
Tkinter uses internally of course) do look much better.

But, there are a few small API changes you'd need to make to Tkinter
programs to see that improvement.

You can find these changes and improvements talked about at
http://www.tkdocs.com

I can pretty much guarantee that continuing to share information about
these new things in Tkinter, and keeping up with modern versions of Tk,
is a whole lot less work than the massive engineering efforts people are
talking about as alternatives.

(Not to say the end results, if they were ever completed, wouldn't be
better going a different way...)

Mark
From: Mark Roseman on
"bart.c" <bartc(a)freeuk.com> wrote:
> "Grant Edwards" <invalid(a)invalid.invalid> wrote in message
> >> Since Tk already provides a basic GUI toolset, and Python can interface
> >> with it more directly than it can with other toolkits
> >>(PyGui -> PyGtk -> Gtk -> Xlib),
> >
> > Compare that to this:
> > TkInter -> Tcl -> Tk -> Xlib
> Is the Tcl intepreter really need to use this GUI? Why not:
> (Pyton ->) Tkinter-API -> Xlib ?


The Tk library was not built as a straight C/C++ library that interfaces
to Xlib (or the Windows or Mac libraries), with a Tcl binding on top of
that.

Tk was built expressly as a GUI toolkit for Tcl, and it uses Tcl very
extensively throughout its implementation. While there is a C API, it
does not expose anywhere close to everything you'd need without making
calls to the Tcl interpreter. Whether you consider this a good or bad
thing, that's the way it is.

So removing Tcl from the Tk library is not by any means practical. Of
the dozens of dynamic languages with Tk bindings, almost all interface
to Tk through the Tcl interface.

The one notable exception is PerlTk, which went out of its way to
extract Tcl from Tk, a herculean effort. Though they managed,
maintaining it was virtually impossible, so they are stuck with a 15+
year old version of Tk, taking into account none of the improvements
made during that time. The preferred Perl interface to Tk is a newer
one called pTk, which wraps Tk's Tcl API, meaning it can easily keep up
to date with improvements in Tk. And the wrapper code itself is
frighteningly small, what amounts to an exceedingly clever but minor
engineering effort.

I hope this explains why trying to have Tkinter work without Tcl would
be a non-starter.

Mark