Chapter 2. Development Environments and Languages

This chapter deals with the what and the how of things. First, we show you what you’re programming for—the nuts and bolts of the Palm OS. Then we show you how to do it—the available development environments. By the time we are through, you should have a good idea of the range of applications you can create for the Palm OS, the coding requirements, and which development environment you want to use.

Overview

Developing for the Palm OS is in some ways similar to other platforms and in other ways strikingly different. Two important similarities are:

  • Applications are event driven.

  • You can use anything from standard C code to assembler to scripting.

Differences tend to center around features crucial to the device size and purpose. These include how the Palm OS handles:

  • Memory requirements

  • Application and data storage

  • Connectivity of the device to the desktop

Most important, you should remember that the relationship between the device and the OS is extremely tight. Everything has been built on the premise that the handheld is an extension of the desktop and that it must be responsive to the user.

Overview of the OS

Let’s look in more detail at this tight interaction of the OS and the applications on the handheld. The Palm OS runs on top of a preemptive multitasking kernel. One task runs the user interface. Other tasks handle things like monitoring input from the tablet.

The user interface permits only one application to be open at a time. Thus, ...

Get Palm Programming: The Developer's Guide now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.