[GHC] #8751: Show parenthesised output of expressions in ghci

GHC ghc-devs at haskell.org
Sat Feb 8 17:24:36 UTC 2014


#8751: Show parenthesised output of expressions in ghci
------------------------------------+-------------------------------------
       Reporter:  Iceland_jack      |             Owner:  Iceland_jack
           Type:  feature request   |            Status:  new
       Priority:  normal            |         Milestone:
      Component:  GHCi              |           Version:  7.6.3
       Keywords:                    |  Operating System:  Unknown/Multiple
   Architecture:  Unknown/Multiple  |   Type of failure:  None/Unknown
     Difficulty:  Unknown           |         Test Case:
     Blocked By:                    |          Blocking:
Related Tickets:                    |
------------------------------------+-------------------------------------
 Operator fixity can be a source of bugs (even for experienced
 users!),[#point1 (1)] precedence levels may vary between languages and
 then there are user-defined operators.

 Attached is a patch for a ghci command allowing users to quickly
 parenthesise expressions as a sanity check (and as an alternative to using
 :info and parsing the result yourself). The command itself is activated
 with `:paren`:
 {{{
 ghci> :paren 2 + 10 * 4 / 3
 2 + ((10 * 4) / 3)
 ghci> :paren \a b → a == b || b && a == (b == a) || b
 \ a b -> (a == b) || ((b && (a == (b == a))) || b)
 ghci> :paren 5 + 1 `mod` 2
 5 + (1 `mod` 2)
 ghci> :paren 5 * 1 `mod` 2
 (5 * 1) `mod` 2
 }}}

 A friend of mine also pointed out that this could eventually be integrated
 into `haskell-mode` where the user could temporarily replace an expression
 with a parenthesised version or have different colours indicate different
 levels of logical nesting.

 [=#point1 (1)] [http://www.knosof.co.uk/cbook/accu06.html Developer
 beliefs about binary operator precedence]

--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/8751>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the ghc-tickets mailing list