Рекомендуется использовать не более одного экземпляра типа коллекции. Например, Nil - это объект case в библиотеке scala.
Однако TreeMap и TreeSet создают новый экземпляр при каждом вызове empty (). Поработав с этим некоторое время, становится ясно, что проблема в том, что заказы не являются ковариантными. Есть ли обходной путь для этого?