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