[IAEP] Activity bundle format (was Re: Long-term support for Sugar)

Bernie Innocenti bernie at codewiz.org
Wed Sep 23 14:49:32 EDT 2009

El Wed, 23-09-2009 a las 14:03 -0400, Benjamin M. Schwartz escribió:
> Bernie Innocenti wrote:
> > A fixed platform with infinite backwards compatibility is a dream even
> > for an interpreted language.
> Java.

Java is just a marketing lie ;-)

The official JVM did not even "run anywhere", but on 3 specific systems
until very recently, when it was open sourced.  These days, there are
plenty of "Windows only", "Linux only" and "Symbian Only" applications
written in Java.

Besides, Java is not really an interpreted language: it can be
statically compiled, and even the JIT can approximate the performance of
C.  Python, which is 10-20 times slower, must depend on C libraries to
perform all the computationally non-trivial work.

Moreover, we cannot control the evolution of Python.  If you look at its
past history, you'll see that, unlike Java, it's a language that likes
to break backwards compatibility from time to time for the sake of
cleaning up its grammar and runtime libraries.

> It depends what you mean.  I really do believe we _could_ implement a
> highly usable system in which Activities are completely self-contained
> portable bundles.  For example, see Android.  I don't believe that we
> _have_ implemented such a system.  I do believe that we _should_, because
> it maximizes the ability of users to predict how their system will behave,
> and predictability is the core of usability and security.

This is a noble goal, but much, *much*, *MUCH* harder and much, *much*,
*MUCH* more constraining than just adopting a real package system with
full blown dependency checking.

The motivation for offering a JVM on "smart" phones is definitely *not*
vendor interoperability.  In fact, some of them are intentionally not
interoperable.  I believe the design goal is creating a proprietary
platform where only approved applications are allowed to run and perform
only approved actions.  The overhead in terms of performance and
flexibility is significant and the consumers pay the price.

Because we're not in the business of creating a locked-down consumer
platform, we don't have to castrate ourselves this way!  We can have 3D
fractal zooming activities for Sugar that would run decently fast even
on the XO.

   // Bernie Innocenti - http://codewiz.org/
 \X/  Sugar Labs       - http://sugarlabs.org/

More information about the IAEP mailing list