Yes, we’re both solving the same problem: defining a default comparison for a type.
Here’s how I might implement the homogeneous sort:
def sort(list, ord \\ Funx.Ord) when is_list(list) do
Enum.sort(list, Ord.Utils.comparator(ord))
end
This lets the caller sort a list using the domain’s default ordering or pass in a different Ord when needed. It supports cases where the same type needs multiple comparison strategies. It also allows Ord composition, making it easy to build more complex ordering logic.


















