Yamandu Ploskonka wrote: > I for one had hoped that the utterly painful performance > problems with Sugar were a price we were paying for total cross-platform > compatibility though Python. I'm having my innocence crushed as I > follow this thread...
We would do well to clarify this. For the record: 1. It is easy to write totally cross-platform programs in Python. A simple program written in pure Python, using only the libraries that we provide, will typically be perfectly cross-platform. 2. Very complex programs using python are often not "pure Python". They may rely on an unusual GTK widget written in C, or an image manipulation library written in C++, or some other external code that is imported into python as a module. This external module is typically a platform-specific binary blob that requires significant effort to rebuild for each platform, and potentially for each distribution. Such external modules are particularly necessary because Python isn't fast enough to do heavy computation in pure python. Some programs only use a little bit of python, and have most of their functionality in a separate platform-specific executable. For example, the "Watch Me" activity uses a bit of python code to configure collaboration, but most of the functionality is provided by a binary for x11vnc and libgtkvnc, which are written in C. 3. Java (and also C#/Mono) is different here because (a) it's fast enough to write just about anything, so people don't need to use external modules (b) the interface to native code libraries is extremely inconvenient so very few people use it (c) it's easy to disable the native-code interface entirely, ensuring that programs are fully portable. HTML+Javascript doesn't offer any native-code interface, and I believe the same is true of typical eToys.
signature.asc
Description: OpenPGP digital signature
_______________________________________________ IAEP -- It's An Education Project (not a laptop project!) [email protected] http://lists.sugarlabs.org/listinfo/iaep
