ctionL expr op)
  = case unLoc op of
      HsVar (L _ v) -> pp_infixly v
      _             -> pp_prefixly
  where
    pp_expr = pprDebugParendExpr expr

    pp_prefixly = hang (hsep [text " \\ x_ ->", ppr op])
                       4 (hsep [pp_expr, text "x_ )"])
    pp_infixly v = (sep [pp_expr, pprInfixOcc v])

ppr_expr (
ppr_expr (SectionL expr op)
  = case unLoc op of
      HsVar (L _ v) -> pp_infixly v
      _             -> pp_prefixly
  where
    pp_expr = pprDebugParendExpr expr

    pp_prefixly = hang (hsep [text " \\ x_ ->", ppr op])
                       4 (hsep [pp_expr, text "x_ )"])
    pp_infixly v = (sep [pp_expr, pprInfixOcc v])
ppr_expr (SectionL expr op)
  = case unLoc op of
      HsVar (L _ v) -> pp_infixly v
      _             -> pp_prefixly
  where
    pp_expr = pprDebugParendExpr expr

    pp_prefixly = hang (hsep [text " \\ x_ ->", ppr op])
                       4 (hsep [pp_expr, text "x_ )"])
    pp_infixly v = (sep [pp_expr, pprInfixOcc v])