АО
чаще всего, доп ресивер нужен для контекста какого-то, а сама уже ф-ию всё же вызывается на каком-то интсансе
чаще код будет такой:
with(a) { b.foo()} чем такой with(a) { with(b) { foo() } } и тогда, решение с декоратором
with выглядит намного логичнееapply/run/with - неизвестно, что у тебя в итоге получится в ресиверах и у чего конкретно ты будешь вызывать какой-либо метод
