alex-tan/elm-review-opinionated-simplify/1.0.0

SimplifyLambdaToComposition

Converts lambdas like (\x -> func x.field) to (func << .field)

Also handles nested applications like (\x -> f (g x.field)) -> (f << g << .field)

rule : Rule

Reports lambdas that can be simplified to function composition.

config =
    [ SimplifyLambdaToComposition.rule
    ]

Fail

List.sortBy (\todo -> Time.posixToMillis todo.createdAt) todos


List.map (\x -> f (g x.field)) list

Success

List.sortBy (Time.posixToMillis << .createdAt) todos


List.map (f << g << .field) list

Try it out

You can try this rule out by running the following command:

elm-review --template alex-tan/elm-review-opinionated-simplify/example --rules SimplifyLambdaToComposition