[Coco] Perl PL for OS/9
William Astle
lost at l-w.ca
Mon Aug 31 02:34:20 EDT 2009
I'm not replying directly to Gene. His post was just a convenient one to
jump in on.
Gene Heskett wrote:
> OTOH, I just checked bash here, on a 32 bit F10 box. Its quite large:
>
> [root at coyote doc]# ls -l /bin/bash
> -rwxr-xr-x 1 root root 756360 2008-12-15 06:04 /bin/bash
>
> No way that could be shrunk enough to work on the coco even if built on an 8
> bit machine.
And that doesn't even include the C library which is probably three or
four times that size.
As Gene and others have pointed out, it is impossible to run a modern
language with modern features on a coco unless it is compiled. Even
then, it would take a very efficient compiler to get even a simple
program to fit in memory.
To pick on perl specifically, the actual way perl works will require a
substantial chunk of memory just to hold the run-time symbol table.
Throw in the hash variables and so on, and you very quickly run out of
space, even for a trivial script. On top of that, the perl language is
complex. You have to have a complete regular expression implementation,
32 bit math, and a massive stack of standard functions. To further
complicate things, it is simply impossible to do dynamic perl module
loading so most CPAN-type things won't work.
About the only way I can see something as powerful as perl even remotely
working is if the runtime environment supports overlays (portions of the
executable loaded into memory upon demand which may get kicked out by
the next overlay loaded). And every time you hit an overlay, you take a
*massive* performance hit.
Bash is not nearly as complex as perl but it still won't fit in the
memory space of the coco with full capabilities.
Now before anyone else pipes up and says "but what about an embedded
version of X", most embedded systems these days are 32 bit! That means
even if something is pared down for an embedded system, it still not
going to be pared down to anything that would run in a 64K address space!
--
William Astle
lost at l-w.ca
More information about the Coco
mailing list