anchor.diff:     ```"
     (let* [(k (cond
                 [(= (type body) "thread") body]
  +              ; we reify the continuation before handing it off to the
  +              ; handler anyway
  +              [(= (type body) "continuation") (.> body :thread)]
                 [(= (type body) "function") (c/create body)]
                 [true (error! (.. "expected a coroutine or a function, got " (type body)))]))
            (last-res nil)]
  
positive.code: (import lua/coroutine c)
  
  (defun call-with-prompt (prompt-tag body handler)
    "Call the thunk BODY with a prompt PROMPT-TAG in scope. If BODY
  
negative.code:                 (>= (n err) 2)
                  (eq? (car err) :abort))
             (if (eq? (cadr err) prompt-tag)
               (handler (reify-continuation k) (cddr err))
               (abort-to-prompt (cadr err) (unpack (cddr err) 1
                                                   (n (cddr err)))))]
            [(! ok)
  