Implement generalised list comprehensions
authorsimonpj@microsoft.com <unknown>
Thu, 20 Dec 2007 11:13:00 +0000 (11:13 +0000)
committersimonpj@microsoft.com <unknown>
Thu, 20 Dec 2007 11:13:00 +0000 (11:13 +0000)
commit67cb409159fa9136dff942b8baaec25909416022
tree2de192f967b2d012b7bc1e8e0b72fd97a8f55a30
parentfe784e7dfffa8b876ed738306a82bf4bdcfd8be7
Implement generalised list comprehensions

  This patch implements generalised list comprehensions, as described in
  the paper "Comprehensive comprehensions" (Peyton Jones & Wadler, Haskell
  Workshop 2007).  If you don't use the new comprehensions, nothing
  should change.

  The syntax is not exactly as in the paper; see the user manual entry
  for details.

  You need an accompanying patch to the base library for this stuff
  to work.

  The patch is the work of Max Bolingbroke [batterseapower@hotmail.com],
  with some advice from Simon PJ.

  The related GHC Wiki page is
    http://hackage.haskell.org/trac/ghc/wiki/SQLLikeComprehensions
20 files changed:
compiler/deSugar/Coverage.lhs
compiler/deSugar/DsArrows.lhs
compiler/deSugar/DsBinds.lhs
compiler/deSugar/DsListComp.lhs
compiler/deSugar/DsUtils.lhs
compiler/hsSyn/HsExpr.lhs
compiler/hsSyn/HsUtils.lhs
compiler/main/Constants.lhs
compiler/main/DynFlags.hs
compiler/parser/Lexer.x
compiler/parser/Parser.y.pp
compiler/prelude/PrelNames.lhs
compiler/rename/RnEnv.lhs
compiler/rename/RnExpr.lhs
compiler/typecheck/TcExpr.lhs
compiler/typecheck/TcHsSyn.lhs
compiler/typecheck/TcMatches.lhs
compiler/utils/Panic.lhs
docs/users_guide/flags.xml
docs/users_guide/glasgow_exts.xml