Michael Norrish wrote:
The error is not in the ML. Each time any of these is run, I see the final "Done". However, a high proportion of the time (33% perhaps), my shell (standard Debian bash) aborts the execution of the process. For example, with the echo "use" piped to poly, I get
...output... Done val it = () : unit Aborted
If I use the here document or the redirect from a file, I also get "Aborted" appended to the expected output.
I don't really understand what's going on here. Often "Aborted" means that the system has killed the process, perhaps because some limit such as swap space has been reached. Have you tried adding OS.Process.exit OS.Process.success; after the print "Done" in order to explicitly exit?
David