[Haskell-cafe] Trouble with simple embedding of shell in haskell
Donn Cave
donn at drizzle.com
Thu Sep 21 16:42:39 EDT 2006
On Thu, 21 Sep 2006, George Brewster wrote:
> I'm just tried writing a function to allow convenient embedding of shell
> commands, but I'm running into behavior I don't really understand
> somewhere at the intersection of lazy evaluation, IO, and threading.
You may also find some unwelcome surprises in the area of pipes and
buffered I/O, that aren't specifically about Haskell. Are you on a
UNIX platform?
I "rewrote" your function by removing both instances of forkIO, and
it worked about like I expected. (The last one encounters an error
"broken pipe" when it tries to write "there" to the "echo hi" shell
process, because that process exits instead of reading from its input.)
I can't say whether you really need forkIO, or whether it's really going
to do what you need - not only do I not know enough about the thread
model, neither do I know what you're really trying to do.
Donn Cave, donn at drizzle.com
More information about the Haskell-Cafe
mailing list