On 17/02/2012, at 17:51, Johan Tibell wrote: > On Fri, Feb 17, 2012 at 12:52 AM, Roman Leshchinskiy <r...@cse.unsw.edu.au> > wrote: >> I'm not convinced that this is a good idea because it doesn't treat all >> types equally. The comparison with Java is problematic, IMO, because in >> Java 'int' is always called 'int' whereas in Haskell, it might be called >> many different things. >> >> To better understand the proposal, which of the types below would you want >> to be unboxed automatically? >> >> data A = A Int# >> newtype B = B A >> data C = C !B >> data D = D !C >> data E = E !() >> data F = F !D > > All of the above. Put in other words: all fields whose final > representation type could be the size of a pointer if we unpacked > enough.
Ok, that makes sense. I would include Double# and Int64# in this list. For the simple reason that if the target audience are beginners they will have a hard time figuring out why their programs run 20x faster with Float/Int than with Double/Int64 instead of just 2x faster. Roman _______________________________________________ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users