#4937: Remove indirections caused by sum types, such as Maybe
---------------------------------+------------------------------------------
    Reporter:  tibbe             |        Owner:              
        Type:  feature request   |       Status:  new         
    Priority:  normal            |    Milestone:              
   Component:  Compiler          |      Version:  7.0.1       
    Keywords:                    |     Testcase:              
   Blockedby:                    |   Difficulty:              
          Os:  Unknown/Multiple  |     Blocking:              
Architecture:  Unknown/Multiple  |      Failure:  None/Unknown
---------------------------------+------------------------------------------

Comment(by rl):

 Not to detract from the discussion, but in this particular case, couldn't
 you do:

 {{{
 data Collection a = C (Array Bool) (Array a)
 }}}

 where the Bools indicate which of the elements are present and (Array a)
 either stores undefined for the missing elements (if you want O(1) random
 access) or doesn't contain the missing elements at all. You could try to
 improve performance by using a bit vector instead of an array of Bools.

-- 
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/4937#comment:6>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler

_______________________________________________
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs

Reply via email to