Hi!

This is a posting full of guesses. Be gentle.

Oh yeah, then you -could- use globals. This is the preferred method by many.
Some applications I have written have over 40 globals... *shudder* I find it
ironic that every computer programming course I take stresses the need for
-no- globals, while PalmOS philosophy is quite the opposite. Why is this?
When I find my self frustrated over the PalmOS API and how it works (which is quite often), I have to sit down and calm myself with this mantra:

"It was designed for a stone-age processor"
"It was designed for a stone-age processor"
"It was designed for a stone-age processor"
"It was designed for a stone-age processor"

I believe that many of the design decisions in PalmOS was to make sure that the programs and the OS used as little CPU and battery power as possible. Therefor they kicked out fancy architectures and designed a (elegant?) light-weight OS and windowing system instead. By carefully designing memory layout of structs (for example "value" and "newValue" are in the same memory position in both sclExit and in sclRepeatEvent), they made it possible for hacking-cowboys to make small, fast and "cheap" programs.

The Palm OS was primitive, and for a purpose. A primitive OS takes less battery, less CPU, and therefor gives you cheaper, long lasting devices. And therefor Palm ruled the PDA universe for a long time.

This is why you often see (stupid) comments from old-style hackers on palm newsgroups like "The 64 k limit is good, it forces you to write good code". This is simply because Palm has encouraged programmers to rather think in terms of "real time embedded programming" then "User interface OS" programming. (Not to be confused with user experience. Palm have done a great job teaching the programmers to write user friendly applications).

It is noteworthy that Palm OS 4.1 is probably the only major PDA OS (not counting the Chinese market) that is possible to cram into a wrist-watch, and still have a decent battery life.


.... And David Fedor said: Let there be ARM

It is my expectation that Palm OS 6 (and beyond) will have more features of a "real" operating system. Multi-threading for applications for example. But I believe that the API:s will probably remain quite unchanged, to make the transition from OS 4 to OS 6 easier for the programmers.

/V 'Last post of the day'


--
For information on using the Palm Developer Forums, or to unsubscribe, please see http://www.palmos.com/dev/support/forums/

Reply via email to