Dear all,
I ran into something I don't quite understand about the treatment of
closed streams.
Take a closed stream handle:
open(f, write, W), close(W), open(f, read, S), close(S)
then:
set_input(S)
stream_property(S, _)
reports existence_error(stream,S) while the ISO standard expects that:
current_input(S)
reports domain_error(stream, S).
On the implementation side, it feels natural to share stream checking
code, which would lead to a more uniform existence_error(stream,S)
error for the three predicates (like SWI Prolog does).
Am I missing something?
Thanks,
--
Jose