[Haskell-beginners] ODP: howto Pipe
marcin.jan.mrotek at gmail.com
Sat Feb 20 11:15:08 UTC 2016
> then I just need to do a forever loop and use this type data to keep the C internal state.
> what's worring me is that I have a sort of internal state but this is not expressed anywhere in the type system...
You can use (StateT <your_type> IO) instead of plain IO in the pipe to
pass that data around. There are functions for working with StateT
(and other transformer) pipes in Pipes.Lift module:
Other than that, having to worry about state kept in the C part of a
Haskell program is often a pain in general, unfortunately. Perhaps you
could take some hints from https://hackage.haskell.org/package/GPipe
for example, but I have no idea if that's going to be of any help.
> I get a segfault when I do a big number of coputation ???
The only change is from Pipes.print to Pipes.drain? This is weird,
maybe you'd have better luck asking on Pipes mailing list:
mailto:haskell-pipes at googlegroups.com )
More information about the Beginners