#1349: Generalise the ! and UNPACK mechanism for data types, to unpack function
arguments
-----------------------+----------------------------------------------------
Reporter: simonpj | Owner:
Type: task | Status: new
Priority: normal | Milestone:
Component: Compiler | Version: 6.6.1
Severity: normal | Keywords:
Difficulty: Unknown | Os: Unknown
Testcase: | Architecture: Unknown
-----------------------+----------------------------------------------------
See this thread:
http://www.nabble.com/More-speed-please!-t3411977.html
Briefly the idea is to allow
{{{
data T = MkT (!Int -> Bool)
}}}
to make a `MkT` hold strict functions only. Anyone unpacking a `MkT` can
assume the function is strict; and anyone building a `MkT` gets a
strictnes wrapper aound whatever function they supply, so even if they
supply a lazy function, it's made strict.
Seems like a natural generalisation of the existing strictness and UNPACK
mechanism for data types.
Lots of details in the thread above.
Simon
--
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/1349>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler_______________________________________________
Glasgow-haskell-bugs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs