introduces a single-threaded object named ms (which stands for
``machine state''). The object has three fields, a pcn or program
counter, a mem or memory, and a code field.

The mem field is occupied by an object initially of type
(array integer (100000)). Logically speaking, this is a list of
length 100000, each element of which is an integer. But in the
underlying implementation of the ms object, this field is occupied
by a raw Lisp array, initially of size 100000.

You might expect the above defstobj to define the accessor function
mem and the updater update-mem. That does not happen!.

The above event defines the accessor function memi and the updater
update-memi. These functions do not access/update the mem field of
the ms object; they access/update the individual elements of the
array in that field.