Como o quebra-cabeça yin-yang funciona?

Estou tentando entender a semântica da chamada / cc no esquema, e a página da Wikipedia em continuações mostra o quebra-cabeça yin-yang como um exemplo:

(let* ((yin
         ((lambda (cc) (display #\@) cc) (call-with-current-continuation (lambda (c) c))))
       (yang
         ((lambda (cc) (display #\*) cc) (call-with-current-continuation (lambda (c) c)))) )
    (yin yang))

Deve produzir@*@**@***@****@..., mas não entendo o porquê; Eu esperaria que ele produzisse@*@*********...

Alguém pode explicar em detalhes por que o quebra-cabeça yin-yang funciona da maneira que funciona?

questionAnswers(6)

yourAnswerToTheQuestion