
#14963: ghci -fdefer-type-errors can't run IO action from another module -------------------------------------+------------------------------------- Reporter: elaforge | Owner: (none) Type: bug | Status: new Priority: high | Milestone: 8.4.2 Component: GHCi | Version: 8.4.1 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by elaforge): This is just a peanut-gallery comment, so forgive the naivety, but my impression is that Idris treats `do` desugaring purely syntactically, so e.g. you don't even need a Monad class or the expected types, just something called (>>=) and pure in scope. Idris of course does a lot of things fundamentally differently, not the least of which is type-directed name overloading, but that seems orthogonal. What's the problem with treating `do` as a syntax macro before even getting to typechecking? I gather the problem above is all rebindable syntax not just `do` and (>>=), but it made me curious about that one thing. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/14963#comment:12 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler