ANNOUNCE: MonadCatchIO-foreign

Hello Haskell, I'd like to announce a very small library in two flavors. The problem I'm trying to solve is that we have some capabilities for writing functions which are polymorphic over monad but still use IO capabilities - liftIO :: (IO a -> m a) from the packages transformers and mtl. The packages[1,2] MonadCatchIO offer similar polymorphism for the exception capabilities of the IO monad. The package MonadCatchIO-foreign offers similar polymorphism for the following functions: alloca, allocaBytes, allocaArray, allocaArray0 and withForeignPtr. It's a small thing, but I don't see why it should be written twice. Links on hackage: http://hackage.haskell.org/package/MonadCatchIO-mtl-foreign http://hackage.haskell.org/package/MonadCatchIO-transformers-foreign GitHub link: http://github.com/aslatter/MonadCatchIO-foreign Feedback, praise and adulation welcome. Antoine

On Mon, May 31, 2010 at 3:10 AM, Antoine Latter
Hello Haskell,
I'd like to announce a very small library in two flavors.
The problem I'm trying to solve is that we have some capabilities for writing functions which are polymorphic over monad but still use IO capabilities - liftIO :: (IO a -> m a) from the packages transformers and mtl. The packages[1,2] MonadCatchIO offer similar polymorphism for the exception capabilities of the IO monad.
The package MonadCatchIO-foreign offers similar polymorphism for the following functions:
alloca, allocaBytes, allocaArray, allocaArray0 and withForeignPtr.
It's a small thing, but I don't see why it should be written twice.
Links on hackage:
http://hackage.haskell.org/package/MonadCatchIO-mtl-foreign http://hackage.haskell.org/package/MonadCatchIO-transformers-foreign
GitHub link:
http://github.com/aslatter/MonadCatchIO-foreign
Feedback, praise and adulation welcome.
Praise and adulation delivered ;). I'm a huge fan of the original MonadCatchIO libraries, and I know I'll be using foreign in the (probably near) future. Thanks! Michael

Thanks for writing this package.
I used those functions myself in my usb package:
http://hackage.haskell.org/packages/archive/usb/0.3.1/doc/html/src/System-US...
(set you browser to UTF-8 encoding to correctly view the Unicode symbols)
I've now patched usb to work with your package:
http://code.haskell.org/~basvandijk/code/usb/System/USB/IO/Synchronous/Enume...
The next release will include it.
Regards,
Bas
On Mon, May 31, 2010 at 2:10 AM, Antoine Latter
Hello Haskell,
I'd like to announce a very small library in two flavors.
The problem I'm trying to solve is that we have some capabilities for writing functions which are polymorphic over monad but still use IO capabilities - liftIO :: (IO a -> m a) from the packages transformers and mtl. The packages[1,2] MonadCatchIO offer similar polymorphism for the exception capabilities of the IO monad.
The package MonadCatchIO-foreign offers similar polymorphism for the following functions:
alloca, allocaBytes, allocaArray, allocaArray0 and withForeignPtr.
It's a small thing, but I don't see why it should be written twice.
Links on hackage:
http://hackage.haskell.org/package/MonadCatchIO-mtl-foreign http://hackage.haskell.org/package/MonadCatchIO-transformers-foreign
GitHub link:
http://github.com/aslatter/MonadCatchIO-foreign
Feedback, praise and adulation welcome.
Antoine _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
participants (3)
-
Antoine Latter
-
Bas van Dijk
-
Michael Snoyman