Hello, I just released usb-safe-0.4.1:
http://hackage.haskell.org/package/usb-safe-0.4.1 Changes compared to 0.3 (I didn't make an announcement for 0.4): * Tested with ghc-6.12.1 and base-4.2.0.0. * It turned out that an Interface can also be regarded as a scarce resource: it needs to be claimed before use and it needs to be released when you're done with it. So just as with USB devices I had to create a new region monad that supported claiming of interfaces. So now I had two region monads: a DeviceRegion and an InterfaceRegion which both were implemented exactly the same and supported the exact same operations. So the next thing I did was to generalize the region code and put it in its own package: 'regions'. This package will be announced separately. * Removed the FilteredEndpoint type. Specific endpoints can now be retrieved from the alternate directly using: 'getEndpoints'. * Added missing language extension: OverlappingInstances (The package was unusable without it) * Added convenience functions 'setConfigWhich', 'withInterfaceWhich' and 'setAlternateWhich' for quickly setting the first setting that satisfies the given predicate on its descriptor. * Hidden the ReadEndpoint and WriteEndpoint type classes so users can't write their own instances for it and thereby potentially messing up my safety guarantees. * Lots of little refactorings (is that a real word?): documentation updates, explicit imports of all used symbols, Unicode syntax and symbols (using the base-unicode-symbols package) * Finally I packaged up some example code in: darcs get http://code.haskell.org/~basvandijk/code/usb-safe-examples/ regards, Bas _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe