То, что вы описываете, является продолжением с разделителями. К сожалению, CLR не поддерживает это и не может быть реализован в управляемом коде (даже в смешанном коде) с помощью любых известных мне приемов.
В настоящее время мне нужна эта функциональность в IronScheme. Есть способы создать такую функциональность в CLR, написав компилятор, который выполняет преобразование CPS, но вызывает множество проблем взаимодействия (нельзя напрямую вызывать функции .NET и т. Д.).
Я провел несколько экспериментов с преобразованием CPS в IronScheme, но мой текущий компилятор не очень подходит для этого и работает довольно медленно.