[("tests/examples/typetest.hs:(2,1)-(4,15): Suggestion: Use otherwise\nFound:\n foo\n | False = baz\n | True = bux\nPerhaps:\n foo\n | False = baz\n | otherwise = bux\n",[Replace {rtype = Expr, pos = SrcSpan {startLine = 4, startCol = 5, endLine = 4, endCol = 9}, subts = [], orig = "otherwise"}]),("tests/examples/typetest.hs:(6,1)-(12,27): Suggestion: Use guards\nFound:\n (x : xs) = if baz then qux else if qux then faux else vrai\nPerhaps:\n (x : xs)\n | baz = qux\n | qux = faux\n | otherwise = vrai\n",[Replace {rtype = Bind, pos = SrcSpan {startLine = 6, startCol = 1, endLine = 12, endCol = 28}, subts = [("g1001",SrcSpan {startLine = 8, startCol = 17, endLine = 8, endCol = 20}),("g1002",SrcSpan {startLine = 10, startCol = 25, endLine = 10, endCol = 28}),("e1001",SrcSpan {startLine = 9, startCol = 22, endLine = 9, endCol = 25}),("e1002",SrcSpan {startLine = 11, startCol = 24, endLine = 11, endCol = 28}),("e1003",SrcSpan {startLine = 12, startCol = 24, endLine = 12, endCol = 28})], orig = "(x : xs)\n | g1001 = e1001\n | g1002 = e1002\n | otherwise = e1003"}]),("tests/examples/typetest.hs:20:12-28: Suggestion: Avoid lambda\nFound:\n \\ x -> f (b (c x))\nPerhaps:\n f . b . c\n",[Replace {rtype = Expr, pos = SrcSpan {startLine = 20, startCol = 12, endLine = 20, endCol = 29}, subts = [("a",SrcSpan {startLine = 20, startCol = 18, endLine = 20, endCol = 19}),("b",SrcSpan {startLine = 20, startCol = 21, endLine = 20, endCol = 22}),("c",SrcSpan {startLine = 20, startCol = 24, endLine = 20, endCol = 25})], orig = "a . b . c"}]),("tests/examples/typetest.hs:22:12-22: Warning: Avoid lambda\nFound:\n \\ xs -> e xs\nPerhaps:\n e\n",[]),("tests/examples/typetest.hs:24:11-23: Suggestion: Avoid lambda using `infix`\nFound:\n (\\ x -> x + b)\nPerhaps:\n (+ b)\n",[Replace {rtype = Expr, pos = SrcSpan {startLine = 24, startCol = 11, endLine = 24, endCol = 24}, subts = [], orig = "(+ b)"}]),("tests/examples/typetest.hs:26:12-24: Suggestion: Avoid lambda\nFound:\n \\ x y -> f y x\nPerhaps:\n flip f\n",[Replace {rtype = Expr, pos = SrcSpan {startLine = 26, startCol = 12, endLine = 26, endCol = 25}, subts = [("x",SrcSpan {startLine = 26, startCol = 20, endLine = 26, endCol = 21})], orig = "flip x"}]),("tests/examples/typetest.hs:28:12-24: Suggestion: Avoid lambda\nFound:\n \\ x -> f (b x)\nPerhaps:\n f . b\n",[Replace {rtype = Expr, pos = SrcSpan {startLine = 28, startCol = 12, endLine = 28, endCol = 25}, subts = [("a",SrcSpan {startLine = 28, startCol = 18, endLine = 28, endCol = 19}),("b",SrcSpan {startLine = 28, startCol = 21, endLine = 28, endCol = 22})], orig = "a . b"}]),("tests/examples/typetest.hs:30:12-20: Warning: Avoid lambda\nFound:\n \\ x -> f x\nPerhaps:\n f\n",[]),("tests/examples/typetest.hs:32:12-24: Suggestion: Avoid lambda\nFound:\n \\ x -> f $ b x\nPerhaps:\n f . b\n",[Replace {rtype = Expr, pos = SrcSpan {startLine = 32, startCol = 12, endLine = 32, endCol = 25}, subts = [("a",SrcSpan {startLine = 32, startCol = 18, endLine = 32, endCol = 19}),("b",SrcSpan {startLine = 32, startCol = 22, endLine = 32, endCol = 23})], orig = "a . b"}]),("tests/examples/typetest.hs:34:12-22: Warning: Avoid lambda\nFound:\n \\ x -> (x +)\nPerhaps:\n (+)\n",[])]