[commit: hoopl] simonmar-hoopl-opt: Remove layers of newtype in Unique and Label (3056dec)

Simon Peyton-Jones simonpj at microsoft.com
Mon Mar 19 09:45:35 CET 2012


Yes, Simon and I talked about this. All the machinery is already in System FC; we just need a suitable source language mechanism for expressing it.  It's just that it has not seemed important enough to design and implement, yet.  But it's clearly a hole in the current language

Simon

|  -----Original Message-----
|  From: cvs-ghc-bounces at haskell.org [mailto:cvs-ghc-bounces at haskell.org] On
|  Behalf Of Ian Lynagh
|  Sent: 17 March 2012 15:56
|  To: Simon Marlow
|  Cc: cvs-ghc at haskell.org
|  Subject: Re: [commit: hoopl] simonmar-hoopl-opt: Remove layers of newtype in
|  Unique and Label (3056dec)
|  
|  On Thu, Mar 15, 2012 at 06:18:39AM -0700, Simon Marlow wrote:
|  >
|  >     Remove layers of newtype in Unique and Label
|  >
|  >     Improves performance due to eliminating some unnecessary maps in
|  >     e.g. mapToList, setToList.  This was quite a significant effect in
|  >     GHC.
|  
|  It seems a pity we have to do that for performance reasons.
|  
|  Would it be possible to instead have a way to write rules something like
|  
|      map someCoercion = mkListCoercion someCoercion
|  
|  (where mkListCoercion takes a coercion for x~y and gives you a coercion
|  for [x]~[y])?
|  
|  
|  Thanks
|  Ian
|  
|  
|  _______________________________________________
|  Cvs-ghc mailing list
|  Cvs-ghc at haskell.org
|  http://www.haskell.org/mailman/listinfo/cvs-ghc





More information about the Cvs-ghc mailing list