Pure or hybrid?

pehr anderson pehr at pehr.net
Fri Nov 17 05:18:01 CET 2000


Dear Daniel, 

One of Python's greatest assets is that it is largly agnostic.
It is easy to glue python to libraries written in C, C++, or
other languages that produce a dynamically shared object file. 
On windows these are called ".DLL" and under unix ".so"

Because python plays well with others, people who use it tend to 
gravitate towards creating bindings for the "best-in-class" solutions,
rather than trying to reinvent the weel again and again.

The best example of this is the Tk GUI toolkit.  
This graphics library was well written and did a fine job.
Rather than be zealots and require python have its own python-based GUI,
people embraced an effective solution and adapted it to serve the 
python community.

So a lot of python is written in python. I learned most of what I know
from browsing the on-line documentation and reading the files in
/usr/lib/python1.5
When I'm using a module based on an shared object file, I have to read
the 
documentation more carefully since I can't fall back on the source.
A lot what makes python useful is written in other languages as well,
but I'm ususally greatful to have bindings to the robust library code of
an industry-standard solution rather than a rickety clone of an existing 
solution.

	-pehr


Daniel Klein wrote:
> 
> Thanks to all who answer (publically and privately) my "Lost at C" thread.
> 
> It brings up another question however. In Smalltalk and Java, those
> languages are, for the most part, programmed in their own language
> (especially Smalltalk. Java, with it's primitive types and static typing is
> ugly to say the least). This means that if I want to see how something is
> implemented and/or copy some piece of code, it's right there for the taking,
> and I don't have to leave the 'comfort' of the language in which I'm
> familiar. I noticed in Python that many of the functions are coded in C and
> if you don't have a C background (like me :^( ) then it reduces the
> effectiveness of the programmer. I guess where I'm going with all of this,
> is Python mostly coded in C or is it mostly coded in itself? Or is it
> hybrid?
> 
> Thanks,
> Daniel Klein



More information about the Python-list mailing list