A resource-constrained device such as a smart card or the like includes
memory for storing an application software program comprising an
object-oriented, verifiable, platform-independent, type-safe and
pointer-safe sequence of instructions. The device can also include a
virtual machine implemented on a microprocessor where the virtual machine
is capable of executing the sequence of instructions. Each instruction
includes an operation code, and each data manipulation instruction is
specific to a particular data type. The application program can be stored
on a computer-readable medium prior to being received by the
resource-constrained device. Methods of using such an application
program, including accessing the program over the Internet and
downloading it to a smart card, also are disclosed.