Hello David,

Saturday, April 8, 2006, 9:58:56 PM, you wrote:

> bitsTable :: Array Word Int
> bitsTable = array (0,255) $ [(i,bitcount i) | i <- [0..255]]

bitsTable :: UArray Word Int
bitsTable = listArray (0,255) $ map bitcount [0..255]

UArray is much faster than Array but can be used only for simple datatypes
(integral, floating point, Char, Bool). more info at
http://haskell.org/haskellwiki/Arrays 

btw: you can use "UArray a Bool" to represent sets of ANY type `a`
belonging to class Ix. It uses only one bit per elemnt in current
implementation

-- 
Best regards,
 Bulat                            mailto:[EMAIL PROTECTED]

_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to