The following predicates manipulate files.
see(+File)see/1 or a file
specification. In the latter case, the following action is taken: If
there is a stream opened by see/1 associated with the same
file already, then it becomes the current input stream.
Otherwise, the file denoted by File is opened for input and made
the current input stream.
seeing(?FileName)see/1, with the current input stream,
if it is not user_input; otherwise, with user.
seenuser_input.
tell(+File)tell/1 or a file
specification. In the latter case, the following action is taken: If
there is a stream opened by tell/1 associated with the same
file already, then it becomes the current output stream.
Otherwise, the file denoted by File is opened for output and made
the current output stream.
telling(?FileName)tell/1, with the current output
stream, if it is not user_output; otherwise, with
user.
tolduser_output.