Че то подумалось вдруг: а чем собственно отличается CPS от GOTO? Только тем, что мы не можем передать управление в кусок кода, который неопределен на момент исполнения инструкции. Значит мы не можем, например, нарваться при исполнении на неинициализированную переменную. Короче, мы не можем в CPS прыгнуть в будущее. На этом, ИМХО, если не считать технических деталей, разница, собственно и кончается.
Я не прав?
PS. Про контексты и неймспейсы прошу не поправлять, я знаю, что тут есть разница, но вопрос не в этом.