Simon Marlow wrote:
Ian Lynagh wrote:
On Mon, Dec 31, 2007 at 09:14:04AM -0500, Isaac Dupree wrote:
I guess boxed types are too risky for efficiency reasons in some
parts of the code
Again, I'd hope that that isn't true for modern GHC, and I personally
would love to see less unboxed hackery in GHC's sources; I think it
sends a bad message: that this sort of thing is necessary to get good
performance.
It's true that unboxed types aren't necessary to get good performance.
However, much as I hate to say it, they're necessary to *reliably* get
good performance. When I write code that uses unboxed types, I know I
never have to worry about some fragile property being broken when
someone tweaks the code in the future, leading to a performance
regression that we probably won't notice for ever.
Unboxed values are particularly helpful for that
in part because they make code compile less often.
Therefore they enforce a certain transparency of time-cost in the
Haskell code, of certain constructs.
Also it directly modifies strictness all over the code... whereas
bang-patterns are perhaps our best alternative, and we can't use them yet.
~Isaac
_______________________________________________
Cvs-ghc mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/cvs-ghc