- User Since
- Jul 27 2014, 11:13 AM (147 w, 1 d)
Sun, Apr 23
Apr 9 2017
Mar 8 2017
Feb 27 2017
Feb 26 2017
Feb 25 2017
Feb 24 2017
Feb 23 2017
Feb 20 2017
I will do some experiments.
Feb 19 2017
Feb 18 2017
Rebase against master
Feb 17 2017
Feb 10 2017
Update expected test results for new master
Feb 9 2017
Ping @RyanGlScott, please review this
Feb 8 2017
Feb 7 2017
Deal with pprParend for HsExpr, add note for ParPat and HsParTy
Feb 5 2017
I will write a note explaining why this change exists, and then wrap it
up. The essence is to try and always have an hsSyn AST that reflects
source code, so that the fact that ppr can now round-trip source can be
relied on in all cases.
I have updated the patch to do away with pprParendExpr and pprParendLExpr, to ensure that any hsSyn AST generation does actually insert parens in the right place. Doing the same for pprParendPat is also trivial.
- Remove pprParend*Expr
Jan 30 2017
In particular, converted expressions still aren't wrapped up in `HsPar`s, and they're only pretty-printed correctly because the `Outputable` instance for `HsExpr` behaves differently from those of `HsType` and `Pat`.
I will look into getting expressions to work the same as types and patterns, as I would prefer a consistent hsSyn AST representation.
Jan 29 2017
Jan 26 2017
Jan 25 2017
Jan 24 2017
Remove some debug code
Jan 17 2017
Jan 15 2017
Jan 14 2017
Rebase and make @mpickering happy
Jan 13 2017
@bgamari Are you happy with my changes? I would like to land this.
Jan 12 2017
Jan 11 2017
Fixing according to @bgamari comments. And rebase.
Jan 10 2017
Jan 7 2017
The annotations parts seem ok, by eyeballing it
Dec 22 2016
I see the tests did pass
In the description, in the sentence "This is because the *_semi parsers always require a semicolon,
but we're allowed to omit that last newline." I think newline should be semi.
Dec 20 2016
Dec 17 2016
Is this needed because the original file is in \r\n format, and the reparsed ppr one is in \n format?
Dec 15 2016
Perhaps make this the default, the makes it much easier to diff. In which case the flag is unnecessary.
Dec 14 2016
Dec 12 2016
Ppr023 tests this pragma.
Dec 11 2016
Dec 8 2016
Neither the API annotations tests nor the printer ones care about stderr.
Dec 7 2016
Remove trailing whitespace in ppr-check.cabal
Removed SourceText Monad, and rebase
Update for @bgamari comments and rebase
The amount of noise this patch generates is not worth the (small) gain
Dec 3 2016
Rebase and update for @simonpj comment
Dec 1 2016
Rebase, all tests should now pass.
Nov 29 2016
Nov 27 2016
Fix remaining tests. There are allocation performance stats issues with Cabal,
tests need to be updated, I presume.
Replacing Bool with more meaningful types
Rebase and more fixing from comments
Nov 25 2016
Introduce 'Promoted' flag to indicate an explict promotion in the source text.
Turn SourceText into a data type, similar to Maybe
Nov 23 2016
Initial responses to @mpickering comments. Thanks for looking at this so quickly.
Note about why HasOccNameId has proliferated everywhere.
Added my own comments.
Nov 17 2016
FYI, I am currently working on https://ghc.haskell.org/trac/ghc/ticket/3384. The intention once the full-fidelity AST pretty printer is in place is to see if the API Annotations can also be used to generate code layout identical to the original.