Changes between Version 2 and Version 3 of PerformanceWarnings


Ignore:
Timestamp:
Oct 5, 2010 9:06:24 AM (5 years ago)
Author:
simonmar
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • PerformanceWarnings

    v2 v3  
    3333 * Warn about lazy state monads
    3434 * Warn about lazy tuples
     35 * Warn about unboxed constructor fields that had to be reboxed for passing to a non-strict function
     36 * Warn about join points that aren't let-no-escapes
     37 * Warn about lazy projections that aren't THUNK_SELECTORs
     38 * Warn about possible space leaks due to `-ffull-laziness`
     39 * Warn about possible loss of sharing due to `-fstate-hack`
    3540
    3641== Output format ==
     
    3843We could emit warnings about line / col number of values that "probably should be strict" or "have unnecessary bang patterns".
    3944
    40 A more advanced option would be to reuse -fhpc to emit colorized source.
     45A more advanced option would be to reuse `-fhpc` to emit colorized source.
    4146
    4247== Assertions ==
    4348
    44 Once we can spot problems, the user could assert, via ANNOTATIONs, that particular properties must hold. These could trigger -Werrors.
     49Once we can spot problems, the user could assert, via ANNOTATIONs, that particular properties must hold. These could trigger `-Werror`s.
    4550
    4651== Results ==
     
    4853Results for quality of the warnings can be measured:
    4954
    50  * Apply -fwarn-performance to a program
     55 * Apply `-fwarn-performance` to a program
    5156 * Do what it says
    5257 * Measure the speedup.
     
    5459== Implementation ==
    5560
    56 Add a -fwarn-performance flag that does two things:
     61Add a `-fwarn-performance` flag that does two things:
    5762 
    5863 * unnec. bang patterns/seq after strictness analysis