I tried this out under the debugger and found it was actually "ls" itself that was crashing. I suspect the reason for the difference in behaviour has to do with differences in the implementation of "/bin/ls" on different platforms. When calling Posix.Process.exec you have to pass all the arguments including the first item which is conventionally the name of the program. So you should always be calling it as Posix.Process.exec("/bin/ls", ["ls"]);
I seem to recall that this changed in the 5.3 release from previous releases which included the program name in the argument list automatically but the Standard Basis library documentation clearly says that the new implementation is correct. I guess one of the reasons is that some programs actually do different things when invoked by different names.
This gives me the right behaviour on the Linux that had been causing a core dump, but on the Mac, I still get SysErr ("Operation not supported", SOME ENOTSUP). Michael _______________________________________________ polyml mailing list polyml@inf.ed.ac.uk http://lists.inf.ed.ac.uk/mailman/listinfo/polyml