View Single Post
Old Jan 23rd, 2006, 10:40 AM   #4
Cerulean
Professional Programmer
 
Cerulean's Avatar
 
Join Date: Apr 2005
Location: London, England
Posts: 459
Rep Power: 4 Cerulean is on a distinguished road
Quote:
Originally Posted by Infinite Recursion
Python is used a great deal in Linux applications, not so much in Windows (it seems).
I hear its getting more exposure on the Mac side too, as it's shipped with recent versions of Mac OS X. With that said, its userbase is always rapidly increasing on all different operating systems. When an application is made with Python on Windows you just won't know it as easily as it'll be bundled up with py2exe or something of the sort.

Quote:
Originally Posted by Arevos
It also doesn't do badly with GUI applications, such as Bittorrent.
I'd go as far as saying it does excellently with GUI applications. Python's dynamic nature and duck typing makes many high level constructs of particular use in GUI building (signals/slots) childs play. Python takes out the hefty compile step, removes the worry about build management with makefiles to get things to build properly, and - provided the toolkit is also - is platform agnostic. Being interpreted isn't a real issue with GUI applications as the GUI libraries are usually written in C or C++, and the applications tend to be input bound. If there are bits where performace is critical, they can easily be written in Pyrex or C.

Quote:
You won't be able to develop the next Google, Quake or Microsoft Office in Python
Weeell i'm not so sure I agree with you on that. Google is a very heavy user of Python as you're probably aware - If you look around pages on Google you'll even see a few of them have a .py extension. I can understand that very intense performance (millions of hits per second) would probably require use of a compiled language, but in Google's case it also requires use of a custom web server, so you know.
As for developing the next Quake - i've found developing 3D games with Panda3D to be very enjoyable and manageable, and that the games themselves run very quickly indeed, so why not? EVE online makes heavy use of Python, for example.
Microsoft Office uses its own hybrid GUI toolkit of some description, so you probably wouldn't be able to develop the next MS Office with C or C++ anyways :-P. Don't see why an office application would be so unfeasible with Python personally.

To answer the original question, Python is definitely not a language that is solely there to help you step onto other things. It's the primary language that I write applications in, be they games, GUI applications, network clients/servers, whatever. Sure, I agree with using the right tool for the right job, but many of the times Python is just that. Being an easy language doesn't mean that it's a toy one, it just means it's a well designed one.

Last edited by Cerulean; Jan 23rd, 2006 at 10:51 AM.
Cerulean is offline   Reply With Quote