[commit: ghc] monad-comp: Preliminary monad-comprehension patch (Trac #4370) (478e69b)
Simon Peyton Jones
simonpj at microsoft.com
Fri Apr 29 19:05:20 CEST 2011
Repository : ssh://darcs.haskell.org//srv/darcs/ghc
On branch : monad-comp
http://hackage.haskell.org/trac/ghc/changeset/478e69b303eb2e653a2ebf5c888b5efdfef1fb9d
>---------------------------------------------------------------
commit 478e69b303eb2e653a2ebf5c888b5efdfef1fb9d
Author: Simon Peyton Jones <simonpj at microsoft.com>
Date: Thu Apr 28 11:44:12 2011 +0100
Preliminary monad-comprehension patch (Trac #4370)
This is the work of Nils Schweinsberg <mail at n-sch.de>
It adds the language extension -XMonadComprehensions, which
generalises list comprehension syntax [ e | x <- xs] to work over
arbitrary monads.
compiler/deSugar/Coverage.lhs | 60 ++++---
compiler/deSugar/DsArrows.lhs | 4 +-
compiler/deSugar/DsExpr.lhs | 20 +-
compiler/deSugar/DsGRHSs.lhs | 4 +-
compiler/deSugar/DsListComp.lhs | 366 +++++++++++++++++++++++++++++++++++--
compiler/deSugar/DsMeta.hs | 8 +-
compiler/hsSyn/Convert.lhs | 6 +-
compiler/hsSyn/HsExpr.lhs | 111 ++++++++++--
compiler/hsSyn/HsLit.lhs | 16 ++-
compiler/hsSyn/HsPat.lhs | 4 +-
compiler/hsSyn/HsUtils.lhs | 32 ++--
compiler/main/DynFlags.hs | 2 +
compiler/main/HscMain.lhs | 2 +-
compiler/parser/Lexer.x | 1 +
compiler/parser/Parser.y.pp | 5 +-
compiler/parser/RdrHsSyn.lhs | 20 ++-
compiler/prelude/PrelNames.lhs | 29 +++-
compiler/rename/RnBinds.lhs | 6 +-
compiler/rename/RnExpr.lhs | 123 +++++++++----
compiler/typecheck/TcArrows.lhs | 4 +-
compiler/typecheck/TcExpr.lhs | 4 +-
compiler/typecheck/TcHsSyn.lhs | 32 ++-
compiler/typecheck/TcMatches.lhs | 351 +++++++++++++++++++++++++++++++++---
compiler/typecheck/TcRnDriver.lhs | 8 +-
compiler/typecheck/TcRnTypes.lhs | 2 +
docs/users_guide/flags.xml | 6 +
docs/users_guide/glasgow_exts.xml | 162 ++++++++++++++++
27 files changed, 1203 insertions(+), 185 deletions(-)
Diff suppressed because of size. To see it, use:
git show 478e69b303eb2e653a2ebf5c888b5efdfef1fb9d
More information about the Cvs-ghc
mailing list