[REBOL] Re: facts we will have to face ...
From: doublec:acc at: 25-Oct-2001 9:53
>btw: Could anyone enlighten me and describe, how Python solves such issue
>of interpreter speed? IIRC, Python can link C code, but then - you lose
>multiplatform advantage too ... so?
I don't know about the Python situation but Squeak [1] handles the situation in a couple
of ways. One is to write the code in 'C' and load it as a dynamic library or link it
in. If the extension is popular enough people port that 'C' library to the other platforms.
Another approach taken is to write the extension in a cut down Smalltalk dialect which
Squeak can compile to 'C' code and is then linked in. This becomes more portable across
the platforms but still requires a bit of tweaking across platforms.
This is how the 3D engines became optimised. They started in smalltalk and then various
parts of it were written as 'plug-ins' to get more speed. The MP3 and MPG support started
with using an open source library that did all the work and passed the image/sound data
to Squeak which then blasted it to the screen or sound system. Worked quite well.
Since REBOL has the ability to load dynamic libraries and call C functions (Pro only?)
then similar could be done there.
[1] http://www.squeak.org
Chris.
http://www.double.co.nz/dylan