#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

Reply via email to