* (defvar *s* (open "data.bin" :element-type '(unsigned-byte 8))
=> *S* * (read-byte *s*) => 42 * (read-byte *s*) => 107 * (file-
position *s*) => 2 When used with two arguments, file-position
sets the stream position: * (file-position *s* 1) => T * (read-
byte *s*) => 107 When used this way, the position is often given
as an integer, but the function actually accepts a designator.
An integer position value represents itself, the keyword :start
represents 0 (the first position in the stream), and the keyword
:end represents the last position in the stream. What would life
be like without :start and :end? For :start, not too difficult;
you could just use 0. But without :end you would need to use
some other function, such as file-length, to correctly position
the stream at the end.