Changes between Version 30 and Version 31 of Frisby2013Q1


Ignore:
Timestamp:
Mar 1, 2013 3:01:28 PM (2 years ago)
Author:
nfrisby
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Frisby2013Q1

    v30 v31  
    957957TODO
    958958
     959== Make all dictionaries strict ==
     960
     961  * we also considered not newtyping dictionaries, but it had little effect
     962    * the only thing it prevents us from doing is "be strict in anything of kind Constraint"
     963
     964  * look inside used superclass dictionaries too
     965
     966  * abstract to <S,U> if we suspect that the dictionary is being reboxed
     967    * be suspicious reboxing, eg, if 3/4 or more of the components are Used
     968      * or maybe if they are UHead?
     969    * the consequence of <S,U> is that ww will use CBV but not unbox it
     970
    959971== Other Tasks ==
    960972
    961973  * Johan pointed out regressions; look into them --- there might be some easy wins
    962974
    963   * try making all dictionaries strict (simultaneously drop the newtype-single-method trick)
    964 
    965975  * late CSE; make lvlMFE very aggressive
    966976
    967977  * consider adding a void parameter to LNEs earlyish in the pipeline so they do not appear to share work
     978
     979  * use a specialized demand transformer for eliminators (record selectors, class selectors)
     980    * it would be dual to the existing specialized transformer for data cons
     981    * cf dmdTransformDataConSig, MkId.dictSelRule
     982    * will need to stash which field is selected in the IdDetails (RecSelId and ClassOpId)
     983      * add a corresponding type synonym for Int alongside the ConTag synonym
     984    * it's a property that could potentially be recognized of user functions...
     985    * I spotted a case (interesting-programs/strict-dicts-something/SuperClasses.hs) where the worker has, eg, LU LU LU demand, but it does *not* use some of those arguments; this  particular case would not happen with the special transformer