Даже так можно, но со String проблемы - генерик для неё разворачивается как для списка х( Возможно, если перестать в коде использовать String совсем - это будет даже работать
Хочу, чтобы один и тот же инстанс мог быть как перекрывающим, так и перекрываемым (в зависимости от того, с каким сравнивать), такое работает в хаскеле? .-.