Changes between Version 5 and Version 6 of Status/Oct09


Ignore:
Timestamp:
Nov 3, 2009 2:53:42 PM (5 years ago)
Author:
simonpj
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Status/Oct09

    v5 v6  
    112112account of type inference than our previous story of type inference 
    113113[ICFP09].  More controversially, we now believe that local let/where 
    114 bindings should not be generalised [LetGen].  Dimitrios is building a 
     114bindings should not be generalised [!LetGen].  Dimitrios is building a 
    115115prototype that embodies these ideas, which we'll then transfer into 
    116116GHC. 
     
    135135 * Simon PJ totally re-engineered the way that INLINE pragmas are  
    136136   implemented., with the goal of making them more robust and  
    137    predicatable [InlinePatch].  There's a new CONLIKE pragma which 
     137   predicatable [!InlinePatch].  There's a new CONLIKE pragma which 
    138138   affects rule matching. 
    139139 
    140140 * Peter Jonsson did an internship in which he made a start on turning 
    141141   GHC into a supercompiler.  Neil Mitchell's terrific PhD thesis suggested 
    142    that supercompliation works well for Haskell [NeilM], and Peter has been working on 
    143    supercompilation for Timber as part of his own PhD [Peter J]. 
     142   that supercompliation works well for Haskell [!NeilM], and Peter has been working on 
     143   supercompilation for Timber as part of his own PhD [!PeterJ]. 
    144144   The GHC version isn't ready for prime time yet, but Simon PJ (now 
    145145   educated by Peter and Neil) is keen to pursue it. 
     
    149149   top-level definitions that can be consulted by a core-to-core pass, 
    150150   and for a core-to-core pass to pass information to its successors 
    151    [Annotations]. 
     151   [!Annotations]. 
    152152   We expect to use these annotations increasingly in GHC itself. 
    153153 
    154154=== Parallelism === 
    155155 
    156 Most of the changes in this area in GHC 6.12.1 were described in our ICFP'09 paper [http://www.haskell.org/~simonmar/bib/multicore-ghc-09_abstract.html Runtime Support for Multicore Haskell].  The highlights: 
     156Most of the changes in this area in GHC 6.12.1 were described in our ICFP'09 paper [!ICFP09b][http://www.haskell.org/~simonmar/bib/multicore-ghc-09_abstract.html Runtime Support for Multicore Haskell].  The highlights: 
    157157 
    158158 * Load-balancing of sparks is now based on lock-free work-stealing queues. 
     
    189189cruft; (c) exploit it, by implementing cool new optimisations at the `C--` level; 
    190190(d) take it further by integrating the native code generators into the  
    191 same pipeline.  You can read more on the wiki [CodeGen]. 
     191same pipeline.  You can read more on the wiki [!CodeGen]. 
    192192 
    193193Several passes of the new code generation pipeline are supported by Hoopl, 
     
    205205== References == 
    206206 
    207 [ICFP09] "Complete and Decidable Type Inference for GADTs", Tom Schrijvers,  
    208 Simon Peyton Jones, Martin Sulzmann, and Dimitrios Vytiniotis. ICFP'09.  
    209 [http://research.microsoft.com/~simonpj/papers/gadt] 
    210 [[BR]] 
    211 [LetGen] "Let should not be generalised", Dimitrios Vytiniotis, Simon 
    212 Peyton Jones, and Tom Schrijvers, submitted to TLDI'10.  
    213 [http://research.microsoft.com/~simonpj/papers/constraints/index.htm] 
    214 [[BR]] 
    215 [Hoopl] "Hoopl: dataflow optimisation made simple", Norman Ramsey, John Dias, and Simon Peyton Jones,  
    216 rejected by POPL 2010. 
    217 [[http://research.microsoft.com/~simonpj/papers/c--]] 
    218 [[BR]] 
    219 [Terei] '''Manuel: what URL?''' 
    220 [[BR]] 
    221 [MaxB] "Types are calling conventions", Max Bolingbroke and Simon Peyton Jones, Haskell Symposium 2009. 
    222 [http://www.cl.cam.ac.uk/~mb566/papers/tacc-hs09.pdf] 
    223 [[BR]] 
    224 [InlinePatch] The big INLINE patch [http://www.haskell.org/pipermail/cvs-ghc/2009-October/050881.html] 
    225 [[BR]] 
    226 [NeilM] "Transformation and Analysis of Functional Programs", Neil Mitchelll,  
    227 PhD thesis, University of York, 2009.  
    228 [http://community.haskell.org/~ndm/thesis/] 
    229 [[BR]] 
    230 [PeterJ] "Positive supercompliation for a higher order call-by-value language",  
    231 Peter Jonsson and Johan Nordlander, POPL 2009. 
    232 http://www.csee.ltu.se/~pj/papers/scp/index.html 
    233 [[BR]] 
    234 [Annotations] '''A wiki ref''' 
    235 [[BR]] 
    236 [CodeGen] '''A wiki ref''' 
     207 * [ICFP09a] "Complete and Decidable Type Inference for GADTs", Tom Schrijvers, Simon Peyton Jones, Martin Sulzmann, and Dimitrios Vytiniotis. ICFP'09.  [http://research.microsoft.com/~simonpj/papers/gadt] 
     208 
     209 * [ICFP09b] "Runtime Support for Multicore Haskell", Simon Marlow, Satnam Singh, and Simon Peyton Jones, ICFP 2009. [http://www.haskell.org/~simonmar/bib/multicore-ghc-09_abstract.html ] 
     210 
     211 * [!LetGen] "Let should not be generalised", Dimitrios Vytiniotis, Simon Peyton Jones, and Tom Schrijvers, submitted to TLDI'10.  [http://research.microsoft.com/~simonpj/papers/constraints/index.htm] 
     212 
     213 * [Hoopl] "Hoopl: dataflow optimisation made simple", Norman Ramsey, John Dias, and Simon Peyton Jones, rejected by POPL 2010. [[http://research.microsoft.com/~simonpj/papers/c--]] 
     214 
     215 * [Terei] '''Manuel: what URL?''' 
     216 
     217 * [MaxB] "Types are calling conventions", Max Bolingbroke and Simon Peyton Jones, Haskell Symposium 2009. [http://www.cl.cam.ac.uk/~mb566/papers/tacc-hs09.pdf] 
     218 
     219 * [!InlinePatch] The big INLINE patch [http://www.haskell.org/pipermail/cvs-ghc/2009-October/050881.html] 
     220 
     221 * [NeilM] "Transformation and Analysis of Functional Programs", Neil Mitchelll, PhD thesis, University of York, 2009. [http://community.haskell.org/~ndm/thesis/] 
     222 
     223 * [PeterJ] "Positive supercompliation for a higher order call-by-value language", Peter Jonsson and Johan Nordlander, POPL 2009. [http://www.csee.ltu.se/~pj/papers/scp/index.html] 
     224 
     225 * [Annotations] Annotations in GHC [http://hackage.haskell.org/trac/ghc/wiki/Annotations] 
     226 
     227 * [!CodeGen] The new codegen pipeline [http://hackage.haskell.org/trac/ghc/wiki/Commentary/Compiler/NewCodeGenPipeline]