я так до конца и не разобрался что они такое
Полноценные continuations позволяют манипулировать стеком в любой момент. Они привлекательны для сообщества Scheme, где хотят минимум абстракций, на которых все строится.
Но в таком случае обработка ошибок это библиотека, а это значит, что все механизмы обработки ошибок так или иначе будут ненадежными. В CL считают, что лучше иметь несколько гарантированно работающих примитивов, ну и вот так сейчас и есть.
Но есть менее жесткие continuations — есть реализации для CL, и это получается медленно.