[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

SEUL: Info about Python



> speaking of python - has anyone here actually used it much?

Someone cross-posted this message on comp.lang.python, I thought I'd
answer the question above.  Please don't see this as a preaching post. 
I think Python might be a good solution for your project, but that's
your decision, not mine.  I will gladly answer questions about Python,
but I'm not interested in a language war.  If y'all decide Perl/Tk (or
something else) is a better tool, then by all means go for it.

I don't know much about the seul project, but I run Linux, NT,  IRIX and
whatever else I can come across.  I use Python a lot (read *a lot*) on
all those platforms.

One advantage of Python over some other languages is that in my
experience, novice programmers can easily write Python code, while
they're scared by the superficial complexity of Perl, and by the ease
with which languages like C result in segfaults.  Advanced programmers
like Python's flexible and dynamic nature.  Python code is not
especially concise (especially compared to Perl), but it tends to be
harder to write bad Python code than bad Perl code.  If you're
interested in more language comparisons, check out the website above. 
That's all I'll say on the Python/Perl divide.

> if so, i'd like to hear about it: how easy is it to learn, how robust is it,
> and how fast is it?  also, if it's been around long enough for this judgement,
> how well does it deal when good ol' tk goes and ups the major revision?
> does it make any attempt to not break?

Python is easy to learn.  I could give testimonials, but the easiest way
to convince folks is to have them spend 1/2hr or 1h reading the
tutorial, and see what they think.  Most Python folks learned Python
using that tutorial (although there are now books on the language).  If
you're interested in Python, check out the website at www.python.org.  

Python is very robust.  It's often used in distributed, long-running
processes which must stay alive for months or years at a time.

Python's speed might be an issue for some folks, but it isn't for most
-- its dynamicity results in some overhead, which is rarely an issue. 
It is easy to take out the bottlenecks using extensions in C.  The
algorithms at the core of Python are optimized to work fast in realistic
conditions.

The most common Python GUI is the Tkinter interface to the Tk system. 
The bottleneck in that system tends to be within the Tcl core which Tk
needs.  That bottleneck is being adressed by the Sun folks.  Folks at
the Center for National Research Initiatives have written a Web browser
in Python with Tkinter which has some nice features.  Lots of other
projects have been built using Tkinter and Python, on Linux as well as
other platforms.  The one significant sticking point w/ respect to
Tkinter is that it is as yet poorly documented.  This is being adressed
in an upcoming O'Reilly book, but for now folks need to be able to read
the Tcl man pages in order to get to the details of Tk.  This may or may
not be the case for Perl/Tk.

There are also bindings from Python to X, Xt, motif, Opengl, Qt.,
SVGAlib, etc. etc. (Python is really good at bindings to other libraries
=).

Python has dealt quite well with the Tk upgrades.  The only issue which
I know about is the mess that the Tcl/Tk distribution introduced with
their changes to the way Tcl dealt with filehandlers.  The Tkinter
interface did not need to change to deal with the new Tk.

Anyway, I hope this was helpful.  If you have questions, feel free to
ask.  I'll let you folks get back to work now.

--david ascher
----------------------------------------------------------------------------
Simple End User Linux Mailing list
To be removed from this mailing list send a message to majordomo@txcc.net
with the line
unsubscribe seul-project
in the body of the letter.
----------------------------------------------------------------------------