473,748 Members | 6,037 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Python finally succeeds in cross-platform areas where Java has beenfailing...

....that would be for desktop-based apps, games, 3d graphics,
and multimedia.

....thanks to APIs and bindings like Pygame, PyOpenGL, PyGtk
and PyGtkGLExt.

A summary of a lengthy post on the subject:
http://lists.free.net.ph/pipermail/c...er/001510.html
- OpenGL for accelerated graphics. (that's PyOpenGL)
- SDL for cross-platform sound, device input, etc... (via Pygame)
- Gtk for excellent themable cross-platform widgets (make your
Gtk apps look just like Win32 apps) (via PyGtk)
- GtkGLExt for accelerated OpenGL display inside widgets. Yow!

(via PyGtkGLExt)

One caveat is that while with .pyc files, Python has what are
essentially platform independent executables ala Java
class files, because the libraries mentioned are not yet a
part of the standard Python distribution, you have to
install the modules and dlls separately.

But if the Gtk and libSDL dlls were to one day come bundled
with Python (like Tcl/Tk is now), and with Psyco to provide JIT and
Python C extensions (being easier to deal with than JNI especially
with the help of SWIG) in the mix, who needs Java indeed?
Jul 18 '05 #1
4 2076
Le Wed, 15 Oct 2003 05:09:25 +0800, Jonathan P. a écrit :
who needs Java indeed?


Sun.

;-)

Jerome
Jul 18 '05 #2
In article <TM************ **********@news 1.tin.it>,
Alex Martelli <al***@aleax.it > wrote:
Jul 18 '05 #3
How much of Python's cross-platform advantage over Java is due to the
single source of the Python interpreter and how much is due to the
language itself?

There's certainly nothing (that I'm aware of, other than time, money,
and skill) to stop me from writing my own Python interpreter, making
some subtle changes in behavior (either intentionally or by accident)
and promoting it in the field. If I could convince enough people to
install it, we'd suddenly have a cross-platform crisis in the Python
world.

This is really all that's happened in the Java world. The above
scenario describes what Microsoft did to Java. The only difference
between me doing my own Python and Microsoft doing their own Java is
that Microsoft has the resources and desire to pull it off.

What would happen if Microsoft saw Python as a threat and decided to
kill it by shipping their own incompatable Python interpreter with
Windows? Would we have any defense?
Jul 18 '05 #4
Roy Smith <ro*@panix.co m> writes:
How much of Python's cross-platform advantage over Java is due to the
single source of the Python interpreter and how much is due to the
language itself?

There's certainly nothing (that I'm aware of, other than time, money,
and skill) to stop me from writing my own Python interpreter, making
some subtle changes in behavior (either intentionally or by accident)
and promoting it in the field. If I could convince enough people to
install it, we'd suddenly have a cross-platform crisis in the Python
world.

This is really all that's happened in the Java world. The above
scenario describes what Microsoft did to Java. The only difference
between me doing my own Python and Microsoft doing their own Java is
that Microsoft has the resources and desire to pull it off.

What would happen if Microsoft saw Python as a threat and decided to
kill it by shipping their own incompatable Python interpreter with
Windows? Would we have any defense?

Sure, the std open source software (OSS) defenses:

1. If the alternative is open source itself, then std OSS rules of
engagement apply. Thus, if the alternative has a few good ideas,
they will be absorbed by the main line. If the whole alternative
is better, the community may shift over en masse (a la gcc a few
years ago). If not, everyone will know it and will avoid the
alternative. Legal use of the Python name is (I think) up to PSF.

2. If the alternative implementation (including all libraries and all
extensions) was completely green-room, then it could perhaps be
kept closed source. In that case it might take a while to realize
it was incompatible. For a bad enough mismatch, the name "Python"
might be withheld, just as SUN fought MS's use of "Java" for
J++. When word got out, very likely there would be a backlash, and
people would avoid it if they could.

3. "avoid it if they could" is the crux of the issue. If MS
orchestrates DRM, Palladium, etc. so that only MS-owned languages
can play on a MS Win** box, then MS might offer something like
python functionality (e.g., that is the sales pitch for C#). Under
these circumstances, it is up to the buyer to beware of lockins.
So long as PSF doesn't authorize MS use of "Python" for that
purpose, there will still not be a split.
--
ha************@ boeing.com
6-6M31 Knowledge Management
Phone: (425) 342-5601
Jul 18 '05 #5

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

699
34065
by: mike420 | last post by:
I think everyone who used Python will agree that its syntax is the best thing going for it. It is very readable and easy for everyone to learn. But, Python does not a have very good macro capabilities, unfortunately. I'd like to know if it may be possible to add a powerful macro system to Python, while keeping its amazing syntax, and if it could be possible to add Pythonistic syntax to Lisp or Scheme, while keeping all of the...
6
8459
by: Rolf Schroedter | last post by:
(Sorry for cross-posting). I need to access large files > 2GByte (Linux, WinXP/NTFS) using the standard C-library calls. Till today I thought I know how to do it, namely for Win32: Use open(), read(), _itelli64(), _lseeki64() with type __int64 Linux/Cygwin: #define _FILE_OFFSET_BITS 64 Use open(), read(), lseek() with type off_t
16
2086
by: Chris | last post by:
Hi, regarding exception-handling : why put code in a 'finally' block, and not just after a 'catch'-block --> Example using 'finally ' : try { OpenFile();
267
10797
by: Xah Lee | last post by:
Python, Lambda, and Guido van Rossum Xah Lee, 2006-05-05 In this post, i'd like to deconstruct one of Guido's recent blog about lambda in Python. In Guido's blog written in 2006-02-10 at http://www.artima.com/weblogs/viewpost.jsp?thread=147358
6
2235
by: JW | last post by:
I have a lousy little Python extension, generated with the generous help of Pyrex. In Linux, things are simple. I compile the extension, link it against some C stuff, and *poof*! everything works. My employer wants me to create a Windows version of my extension that works with the vanilla Python 2.5 from python.org. My employment contract states that I won't be required to run Windows, and I desperately want to honor that clause....
1
1639
by: Han-Wen Nienhuys | last post by:
Hello, I have a small patch for Python SVN that makes it possible to cross-compile python on Unix to various other Unix targets. I have successfully built a binary for FreeBSD on Linux. The patch is available at https://sourceforge.net/tracker/?func=detail&atid=305470&aid=1597850&group_id=5470
145
4287
by: Dave Parker | last post by:
I've read that one of the design goals of Python was to create an easy- to-use English-like language. That's also one of the design goals of Flaming Thunder at http://www.flamingthunder.com/ , which has proven easy enough for even elementary school students, even though it is designed for scientists, mathematicians and engineers.
4
2115
by: Terrence Brannon | last post by:
Hello, I have written a program to draw a vescica piscis <http:// en.wikipedia.org/wiki/Vesica_piscis> from turtle import * def main(): setup(width=400, height=400) r = 50 color("black")
1
1592
by: Stephen Cattaneo | last post by:
Hi all, Personally I know nothing of cross compiling so please excuse my ignorance, if this question is silly. A friend of mine is attempting to cross compile python 2.5.2 onto a MIPS64 box. He is asking if there is a cross compile patch for 2.5.2. Do any of you know where He might find such a thing? Thanks,
0
8991
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
9544
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
0
9372
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
1
9324
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
8243
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
1
6796
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
6074
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
1
3313
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
3
2215
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.