Без заголовка
Я тоже сразу подумал о функциональных языках. Т.е. на Haskell хороший стиль программирования и состоит в преобразованиях тщательно разработанной системы типов (что подразумевает дальнейшую композицию этих преобразований). Arrow те же тоже заточены под композицию.