я вот ретроспективно глядя на то, как в моих проектах появился F[Unit] вместо Unit для логирования, могу сказать только одну причину для его появления - композируемость со всеми остальными функциями и типами, но никак не для ссылочной прозрачности и чистоты