Beefy Boxes and Bandwidth Generously Provided by pair Networks
The stupid question is the question not asked
 
PerlMonks  

comment on

( [id://3333]=superdoc: print w/replies, xml ) Need Help??
It boils down to the way the PalmOS was designed. (I'm no expert here, and I haven't touched palm since PalmOS 3, so this may no longer hold true. Chips are up to 400mhz these days, PalmOS will have to improve enventually. Evolve or die!)

While the hardware has 32mb, PalmOS handles memory in 64k blocks called records. This is the biggest chunk of code you can execute, but not all ram in a palm is executable, it is also split into storage ram. Storage ram is executed in place and is not loaded into an executable space.

Suppose you have an app that displays jpg files. Your app loads and runs in executable ram. It gets to the point where it wants to display your jpg. Instead of loading the image into ram and twiddling bits, the app points to the jpg in storage and the code runs through it. This is one of the tricks that allows palm to run in low amounts of ram.

Back to perl, the parser is pretty big. I believe it's up to a few megs these days. Obviously this is too big for the 64k limit. Google for "microperl" and "palm" and you can read about what people are doing to work on it and how these limitations affect them.

There exists a good paper discussing how the JavaVM was ported to Palm to build the KVM. Google for "j2me palm kvm" and I'm sure it will come up. It's not too heavy and goes over alot of design decisions and roadblocks they ran into. I don't remember, but I think they ended up chaining 64k blocks somehow. Other interesting bits like removing Unicode from the KVM libraries removed something like 21mb of bloat on hello world.

Perl on Palm explains how python was able to be ported.

HTH!

In reply to Re: Perl for the Palm? Why Not? by elwarren
in thread Is Perl available for PalmOS? by scottj

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post; it's "PerlMonks-approved HTML":



  • Are you posting in the right place? Check out Where do I post X? to know for sure.
  • Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
    <code> <a> <b> <big> <blockquote> <br /> <dd> <dl> <dt> <em> <font> <h1> <h2> <h3> <h4> <h5> <h6> <hr /> <i> <li> <nbsp> <ol> <p> <small> <strike> <strong> <sub> <sup> <table> <td> <th> <tr> <tt> <u> <ul>
  • Snippets of code should be wrapped in <code> tags not <pre> tags. In fact, <pre> tags should generally be avoided. If they must be used, extreme care should be taken to ensure that their contents do not have long lines (<70 chars), in order to prevent horizontal scrolling (and possible janitor intervention).
  • Want more info? How to link or How to display code and escape characters are good places to start.
Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others admiring the Monastery: (3)
As of 2024-04-19 19:32 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found