At Wed, 6 Aug 2008 00:43:55 -0500, Galchin, Vasili wrote: > > [1 <multipart/alternative (7bit)>] > [1.1 <text/plain; ISO-8859-1 (7bit)>] > Hello, > > 1) Is there a common assumed semantics across all of the Haskell "with" > things? withString? withData?
A vague semantic is that some resource is acquired, used, and then released. > 2) If the answer to 1) is yes, then does this imply some kind of > polymorphism? Couldn't "with" be "reduced" to a higher order function then > ?? I think Control.Exception.bracket is used to implement many, but not all, of the with* functions. > newThing :: IO a > newThing = ... > destroyThing :: a -> IO b > destroyThing ... > withThing :: (Thing -> IO a) -> IO a > withThing useThing = bracket newThing destroyThing useThing I have not fully answered either of your questions, but hopefully this is a start. j. _______________________________________________ Haskell-Cafe mailing list [email protected] http://www.haskell.org/mailman/listinfo/haskell-cafe
