---
# this is rarely an improvement
- ignore: {name: Move brackets to avoid $}
# this is often worse
- ignore: {name: Use <$>}
# this aids clarity since you can name the parameters
- ignore: {name: Avoid lambda}
- ignore: {name: Avoid lambda using `infix`}
- ignore: {name: Replace case with fromMaybe}
# whether this is better is very variable
- ignore: {name: Use infix}
# hlint can't handle typed TH: https://github.com/haskell-suite/haskell-src-exts/issues/383
# annoyingly, 'within' doesn't seem to work if there's a parse error, so we have to blanket
# ignore it
- ignore: {name: Parse error}
# This is rarely better, and often more confusing
- ignore: {name: Use asks}
# It seems clearer to use case than fromMaybe
- ignore: {name: Use fromMaybe}
- ignore: {name: Use section}

- fixity: infixr 8 .*
- fixity: infixr 3 ***
- fixity: infixr 3 &&&
- fixity: infixr 1 <=<
# first is too lazy, see:  https://github.com/input-output-hk/plutus/issues/3876
- ignore: {name: Use first, within: [UntypedPlutusCore.Evaluation.Machine.Cek]}