Skip to content

Multi-threaded type inference #118

Multi-threaded type inference

Multi-threaded type inference #118

Triggered via pull request April 8, 2025 11:03
Status Failure
Total duration 32s
Artifacts

hlint.yaml

on: pull_request
Fit to window
Zoom out
Zoom in

Annotations

1 error and 10 warnings
hlint
HLint failed with status: 1. Warning (3), Suggestion (12)
hlint: brat/Brat/Checker/SolveNumbers.hs#L63
Suggestion in unifyNum in module Brat.Checker.SolveNumbers: Redundant $ ▫︎ Found: "traceM $ (\"unifyNum In\\n \" ++ show nv0 ++ \"\\n \" ++ show nv1)" ▫︎ Perhaps: "traceM (\"unifyNum In\\n \" ++ show nv0 ++ \"\\n \" ++ show nv1)"
hlint: brat/Brat/Checker/SolveHoles.hs#L51
Suggestion in typeEq' in module Brat.Checker.SolveHoles: Redundant bracket ▫︎ Found: "do hopes <- req AskHopes\n exp <- sem sems exp\n act <- sem sems act\n qexp <- (quote Zy exp)\n qact <- (quote Zy act)\n traceM (\"typeEq' exp: \" ++ show qexp)\n traceM (\"typeEq' act: \" ++ show qact)\n typeEqEta str stuff hopes k exp act" ▫︎ Perhaps: "do hopes <- req AskHopes\n exp <- sem sems exp\n act <- sem sems act\n qexp <- (quote Zy exp)\n qact <- quote Zy act\n traceM (\"typeEq' exp: \" ++ show qexp)\n traceM (\"typeEq' act: \" ++ show qact)\n typeEqEta str stuff hopes k exp act"
hlint: brat/Brat/Checker/SolveHoles.hs#L50
Suggestion in typeEq' in module Brat.Checker.SolveHoles: Redundant bracket ▫︎ Found: "do hopes <- req AskHopes\n exp <- sem sems exp\n act <- sem sems act\n qexp <- (quote Zy exp)\n qact <- (quote Zy act)\n traceM (\"typeEq' exp: \" ++ show qexp)\n traceM (\"typeEq' act: \" ++ show qact)\n typeEqEta str stuff hopes k exp act" ▫︎ Perhaps: "do hopes <- req AskHopes\n exp <- sem sems exp\n act <- sem sems act\n qexp <- quote Zy exp\n qact <- (quote Zy act)\n traceM (\"typeEq' exp: \" ++ show qexp)\n traceM (\"typeEq' act: \" ++ show qact)\n typeEqEta str stuff hopes k exp act"
hlint: brat/Brat/Checker/Monad.hs#L165
Suggestion in captureOuterLocals in module Brat.Checker.Monad: Move brackets to avoid $ ▫︎ Found: "(req $ AddCapture n (x, new)) >> (pure $ Just j)" ▫︎ Perhaps: "req (AddCapture n (x, new)) >> (pure $ Just j)"
hlint: brat/Brat/Checker/Monad.hs#L165
Suggestion in captureOuterLocals in module Brat.Checker.Monad: Move brackets to avoid $ ▫︎ Found: "(req $ AddCapture n (x, new)) >> (pure $ Just j)" ▫︎ Perhaps: "(req $ AddCapture n (x, new)) >> pure (Just j)"
hlint: brat/Brat/Checker/Monad.hs#L140
Suggestion in localFC in module Brat.Checker.Monad: Redundant $ ▫︎ Found: "pure $ Nothing" ▫︎ Perhaps: "pure Nothing"
hlint: brat/Brat/Checker/Monad.hs#L129
Suggestion in wrapper2 in module Brat.Checker.Monad: Avoid lambda ▫︎ Found: "\\ s -> pure (f s)" ▫︎ Perhaps: "pure . f"
hlint: brat/Brat/Load.hs#L159
Suggestion in loadStmtsWithEnv in module Brat.Load: Use null ▫︎ Found: "length holes == 0" ▫︎ Perhaps: "null holes" ▫︎ Note: increases laziness
hlint: brat/Brat/Eval.hs#L195
Warning in kindOf in module Brat.Eval: Redundant <&> ▫︎ Found: "(req (TypeOf e) <&> fst)\n >>=\n \\case\n EndType Braty (Left k) -> pure k\n EndType my ty\n -> typeErr\n $ \"End \"\n ++\n show e\n ++\n \" isn't a kind, it's type is \"\n ++\n case my of\n Braty -> show ty\n Kerny -> show ty" ▫︎ Perhaps: "req (TypeOf e)\n >>=\n (\\case\n EndType Braty (Left k) -> pure k\n EndType my ty\n -> typeErr\n $ \"End \"\n ++\n show e\n ++\n \" isn't a kind, it's type is \"\n ++\n case my of\n Braty -> show ty\n Kerny -> show ty)\n . fst"
hlint: brat/Brat/Eval.hs#L137
Warning in quoteNum in module Brat.Eval: Eta reduce ▫︎ Found: "quoteNum lvy num = fmap (quoteVar lvy) num" ▫︎ Perhaps: "quoteNum lvy = fmap (quoteVar lvy)"