Open jfmengels opened 5 months ago
Some more
-- known n
-- same for maximum
List.minimum (List.repeat n x)
--> Just x -- if n > 0
--> Nothing -- if n <= 0, Already implemented (see comment below)
-- unknown n
-- same for maximum
List.minimum (List.repeat n x)
--> if n > 0 then Just x else Nothing
-- same for maximum
List.minimum (List.reverse list)
--> List.minimum list
-- same for maximum, sortBy f, sortWith f
List.minimum (List.sort list)
--> List.minimum list
The minimum << reverse = minimum
doesn't work for these pesky NaNs:
✗ minimum = reverse minimum
Given [(0,0),(NaN,0)]
"Just (0,0)"
╷
│ Expect.equal
╵
"Just (NaN,0)"
running the test
Test.fuzz (Fuzz.list (Fuzz.pair Fuzz.float Fuzz.int))
"minimum = reverse minimum"
(\comparables ->
(comparables |> List.minimum |> Debug.toString)
|> Expect.equal
(comparables |> List.reverse |> List.minimum |> Debug.toString)
)
If we know
x <= y