Opened 10 years ago

Last modified 5 months ago

#1262 new feature request

RecursiveDo in Template Haskell

Reported by: philip.weaver@… Owned by: mgsloan
Priority: normal Milestone:
Component: Template Haskell Version: 6.6
Keywords: Cc: MartijnVanSteenbergen, massysett
Operating System: Unknown/Multiple Architecture: Unknown/Multiple
Type of failure: None/Unknown Test Case: th/TH_recursiveDo
Blocked By: Blocking:
Related Tickets: Differential Rev(s): Phab:D1979
Wiki Page:


I really want mdo support in Template Haskell! Thanks!

Change History (13)

comment:1 Changed 10 years ago by igloo

  • Milestone set to 6.8

comment:2 Changed 9 years ago by simonmar

  • Milestone changed from 6.8 branch to _|_

No immediate plans to do this.

comment:3 Changed 8 years ago by simonmar

  • Architecture changed from Unknown to Unknown/Multiple

comment:4 Changed 8 years ago by simonmar

  • Operating System changed from Unknown to Unknown/Multiple

comment:5 Changed 7 years ago by MartijnVanSteenbergen

  • Cc MartijnVanSteenbergen added

comment:6 Changed 7 years ago by simonpj

See also #2798, where we propose to deprecate mdo in favour of a more modular rec.


comment:7 Changed 4 years ago by morabbin

  • Type of failure set to None/Unknown

Since #2798 was accepted, this out to be closed (if TH supports DoRec) or renamed, if folks still want it.

comment:8 Changed 4 years ago by igloo

  • Summary changed from mdo in Template Haskell to RecursiveDo in Template Haskell
Prelude> :set -XRecursiveDo -XTemplateHaskell
Prelude> :m + Language.Haskell.TH
Prelude Language.Haskell.TH> do x <- runQ [| do rec { x <- return y; y <- return x }; return () |]; putStrLn (pprint x)

    Exotic statement not (yet) handled by Template Haskell
      [rec { x <- return y;
             y <- return x },
       return ()]

comment:9 Changed 4 years ago by simonpj

We just need someone to update the template-haskell library to support mdo, and add support to DsMeta and Convert.


comment:10 Changed 2 years ago by nomeata

  • Keywords newcomer added

comment:11 Changed 11 months ago by massysett

  • Cc massysett added

comment:12 Changed 8 months ago by thomie

  • Keywords newcomer removed

No takers. Removing keyword to keep the newcomers list fresh. Please put it back if you disagree.

comment:13 Changed 5 months ago by thomie

  • Differential Rev(s) set to Phab:D1979
  • Owner set to mgsloan
  • Test Case set to th/TH_recursiveDo
Note: See TracTickets for help on using tickets.