(→GHC and base library improvements)
Revision as of 11:21, 14 August 2011
1 Post-Hackathon Report
This page is for listing what was done during the Hackathon. Please add a short description of what you worked on, with links to relevant blog posts, hackage packages, commits, etc.
1.1 fclabels 1.0 release
New release of the fclabels package. The new package has a lot of code and documentation cleanups, support for partial labels in the case of multi-constructor datatypes and is about 20x as fast for setting and modifying as the previous version. Thanks everyone for helping me out!
1.2 GHC and base library improvements
- Add primops for bit population count. These primops compile down to `POPCNT` instructions where available and fast fallbacks (implemented in C) otherwise.
- Add unchecked left and right bit shifts: The Data.Bits.shift method uses a branch to check if the shift amount is larger than the word size and returns 0 in these cases. This extra safety makes performance worse in bit twiddling code.
- Discussed unpacking of enums in GHC (not yet implemented).