немногие одобряют, что эти практики - лучшие
Значит, они не правы. ХКТ - это способ зафиксировать в тайп-параметрах то, что само принимает тайп-параметры, это настолько просто. В свою очередь это ведет к целому набору параметрически полиморфных абстракций, которые приводят к приятной и ненапряжной разработке