[MLton-devel] nucleic benchmark times

Stephen Weeks MLton@mlton.org
Wed, 13 Nov 2002 20:24:19 -0800


> That wouldn't be too hard, although I assume you mean the benchmark
> program (as opposed to post-processing the output).

The one advantage of a separate program as a post-processor would be
that you wouldn't have to specify all the orderings when you run the
benchmarks.  It looks like that would have been useful to you.

> BTW, when I was hacking on the benchmark program, I noted that the -err
> and -out options don't do anything because the compile and program output
> are pumped to /dev/null instead of the temporary file.
...
> Are fork/exec still broken on Cygwin?

I haven't tried them in months.

> The big difference in the benchmark prog seems to be between
> fluidLet-ing a file desc. or an TextIO.{in,out}stream.  I could do
> the former with the temp files via the MLton.TextIO functions,
> although I'm not clear on the semantics of spawn to know whether the
> latter would work.

The spawned child inherits the file descriptors of the parent.  There
is no necessary connection between file descriptor 2 and Out.error.
In particular, during Out.fluidLet (Out.error, ...), file descriptor 2
still points to the same place, while Out.error points to a new
place. 

So, I don't think the latter would work.  You should use
MLton.TextIO.outFd and FileDesc.fluidLet to make file descriptor 2
match up with the current Out.error for the duration of the spawn.


-------------------------------------------------------
This sf.net email is sponsored by: Are you worried about 
your web server security? Click here for a FREE Thawte 
Apache SSL Guide and answer your Apache SSL security 
needs: http://www.gothawte.com/rd523.html
_______________________________________________
MLton-devel mailing list
MLton-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mlton-devel