(file-position port) returns the current read/write
position of port, and (file-position port k) sets the
read/write position to k. The latter works only for file and
string ports, and raises the exn:application:mismatch exception
for other port kinds. Calling file-position without a position
on a non-file/non-string input port returns the number of characters
that have been read from that port.
When (file-position port k) sets the position
k beyond the current size of an output file or string, the
file/string is enlarged to size k and the new region is filled
with #\nul. If k is beyond the end of an input file or
string, then reading thereafter returns eof without changing
the port's position.