diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2015-11-02 18:30:50 -0800 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2015-11-02 18:30:50 -0800 |
commit | 3ac0654ecebb31ebaaf553446244408fcf0f79fc (patch) | |
tree | 186eab038084aa05c1598b86ba2b684cb7572440 /tests/012 | |
parent | 18dd42f65e620326bb21ffcde92004cc9705cbf8 (diff) | |
download | txr-3ac0654ecebb31ebaaf553446244408fcf0f79fc.tar.gz txr-3ac0654ecebb31ebaaf553446244408fcf0f79fc.tar.bz2 txr-3ac0654ecebb31ebaaf553446244408fcf0f79fc.zip |
Moving sys:capture-cont to call/cc style API.
* unwind.c (revive_cont): Don't wrap cons cell around
passed arg; just pass it directly. We don't need
that convention any more.
* capture_cont: Take functional argument. Pass the captured
continuation to the function. If the function returns,
return whatever it returned. When resuming, return the
continuation argument.
(uw_capture_cont): Take functional second argument
and pass to capture_cont. Context form becomes third
argument.
(uw_late_init): Update registration of sys:capture-cont
to three arguments, two required.
* unwind.h (uw_capture_cont): Declaration updated.
* share/txr/stdlib/yield.tl (sys:yield-impl): Not
needed any more; all this was doing was implementing
a call/cc style interface around sys:capture-cont
which can now be used directly.
(yield-from): Use sys:capture-cont directly.
(suspend): Simplified to the point of triviality
with new sys:capture-cont.
* txr.1: Documented.
Diffstat (limited to 'tests/012')
0 files changed, 0 insertions, 0 deletions