Частоиспользуемая практика в ООП - это процедурный\императивный способ написания методов, полагаю, что ООП станет не намного менее ООП, если процедур на базе встроенных в java команд заменяют на какие-то монадические структуры данных, к.н. IO/ZIO/Task, для описания той же императивной логики, но с некоторым оверхедом на синтаксис и немалым количеством автоматически приобретаемых качеств.
Процедурный ТФ помогает определить свои собственные бизнес-ДСЛ, которые всё ещё так же последовательно, с разбиением на команды описывают решение задачи, но тем не менее позволяют выполнять преобразования данных с помощью чистых функций, и обеспечивают поддержку неблокирующего исполнения и структурированной конкаренси.
Использование его не противоречит, с моей точки зрения, большинству формулировок ООП, которые я слышал.