使用自定义比较器对列表进行排序

List.sortWith 允许你使用任何形状的数据对列表进行排序 - 你为其提供比较功能。

compareBools : Bool -> Bool -> Order
compareBools a b =
    case (a,b) of
        (False, True) ->
            LT

        (True, False) ->
            GT

        _ ->
            EQ
        
> List.sortWith compareBools [False, True, False, True]
[False, False, True, True] : List Bool