picolisp

Unnamed repository; edit this file to name it for gitweb.
git clone https://logand.com/git/picolisp.git/
Log | Files | Refs | README | LICENSE

commit 7ebe62e2d099342039927bfcff9bd1a54f867a42
parent 33743e05a3fbc5f84675c0ad352639d436738dec
Author: Alexander Burger <abu@software-lab.de>
Date:   Sat, 25 May 2013 16:54:48 +0200

'co' final 'yield's return value
Diffstat:
Mlib/map | 22+++++++++++-----------
Msrc64/flow.l | 1+
Msrc64/tags | 40++++++++++++++++++++--------------------
3 files changed, 32 insertions(+), 31 deletions(-)

diff --git a/lib/map b/lib/map @@ -1,5 +1,5 @@ -! (2884 . "@src64/flow.l") -$ (2986 . "@src64/flow.l") +! (2885 . "@src64/flow.l") +$ (2987 . "@src64/flow.l") % (2572 . "@src64/big.l") & (2807 . "@src64/big.l") * (2389 . "@src64/big.l") @@ -46,7 +46,7 @@ bool (1724 . "@src64/flow.l") box (828 . "@src64/flow.l") box? (1131 . "@src64/sym.l") by (1669 . "@src64/apply.l") -bye (3434 . "@src64/flow.l") +bye (3435 . "@src64/flow.l") bytes (2973 . "@src64/subr.l") caaaar (271 . "@src64/subr.l") caaadr (288 . "@src64/subr.l") @@ -62,7 +62,7 @@ caddar (409 . "@src64/subr.l") cadddr (435 . "@src64/subr.l") caddr (156 . "@src64/subr.l") cadr (45 . "@src64/subr.l") -call (3086 . "@src64/flow.l") +call (3087 . "@src64/flow.l") car (5 . "@src64/subr.l") case (1965 . "@src64/flow.l") catch (2467 . "@src64/flow.l") @@ -115,7 +115,7 @@ diff (2590 . "@src64/subr.l") dir (3154 . "@src64/main.l") dm (545 . "@src64/flow.l") do (2141 . "@src64/flow.l") -e (2947 . "@src64/flow.l") +e (2948 . "@src64/flow.l") echo (4434 . "@src64/io.l") env (609 . "@src64/main.l") eof (3549 . "@src64/io.l") @@ -141,7 +141,7 @@ flip (1700 . "@src64/subr.l") flush (5143 . "@src64/io.l") fold (3521 . "@src64/sym.l") for (2230 . "@src64/flow.l") -fork (3260 . "@src64/flow.l") +fork (3261 . "@src64/flow.l") format (2089 . "@src64/big.l") free (1960 . "@src64/db.l") from (3568 . "@src64/io.l") @@ -169,12 +169,12 @@ inc (2256 . "@src64/big.l") index (2638 . "@src64/subr.l") info (3056 . "@src64/main.l") intern (1007 . "@src64/sym.l") -ipid (3205 . "@src64/flow.l") +ipid (3206 . "@src64/flow.l") isa (967 . "@src64/flow.l") job (1429 . "@src64/flow.l") journal (971 . "@src64/db.l") key (3401 . "@src64/io.l") -kill (3237 . "@src64/flow.l") +kill (3238 . "@src64/flow.l") last (2045 . "@src64/subr.l") le0 (2693 . "@src64/big.l") length (2742 . "@src64/subr.l") @@ -239,7 +239,7 @@ on (1717 . "@src64/sym.l") onOff (1747 . "@src64/sym.l") one (1780 . "@src64/sym.l") open (4360 . "@src64/io.l") -opid (3221 . "@src64/flow.l") +opid (3222 . "@src64/flow.l") opt (3345 . "@src64/main.l") or (1640 . "@src64/flow.l") out (4236 . "@src64/io.l") @@ -324,7 +324,7 @@ tail (1912 . "@src64/subr.l") tell (3285 . "@src64/io.l") text (1407 . "@src64/sym.l") throw (2493 . "@src64/flow.l") -tick (3173 . "@src64/flow.l") +tick (3174 . "@src64/flow.l") till (3635 . "@src64/io.l") time (2861 . "@src64/main.l") touch (1181 . "@src64/sym.l") @@ -352,7 +352,7 @@ wr (5268 . "@src64/io.l") xchg (1672 . "@src64/sym.l") xor (1701 . "@src64/flow.l") x| (2887 . "@src64/big.l") -yield (2728 . "@src64/flow.l") +yield (2729 . "@src64/flow.l") yoke (1197 . "@src64/subr.l") zap (1195 . "@src64/sym.l") zero (1765 . "@src64/sym.l") diff --git a/src64/flow.l b/src64/flow.l @@ -2572,6 +2572,7 @@ ld (EnvCo7) S # Close coroutine frame ld Z S # Point Z to main frame save (EnvCo) (EnvMid) (Z III) # Save environment + ld E Nil # Final 'yield's return value : resumeCoroutine ld S (Y -II) # Restore stack pointer ld (Y -II) 0 # Mark as active diff --git a/src64/tags b/src64/tags @@ -1107,26 +1107,26 @@ sys/x86-64.linux.defs.l,1959 throwErrZX2518,58492 doFinally2524,58583 doCo2548,59123 -resumeCoroutine2575,59987 -doYield2728,65219 -cutLocalCX2847,68568 -joinLocalCX2860,68798 -closeCoFilesC2870,68961 -doBreak2884,69224 -brkLoadE_E2892,69376 -doE2947,70976 -doTrace2986,71742 -traceCY3058,73657 -doCall3086,74145 -doTick3173,76337 -doIpid3205,77334 -doOpid3221,77622 -doKill3237,77917 -doFork3260,78352 -forkLispX_FE3273,78573 -doBye3434,83133 -byeE3446,83305 -finishE3458,83616 +resumeCoroutine2576,60042 +doYield2729,65274 +cutLocalCX2848,68623 +joinLocalCX2861,68853 +closeCoFilesC2871,69016 +doBreak2885,69279 +brkLoadE_E2893,69431 +doE2948,71031 +doTrace2987,71797 +traceCY3059,73712 +doCall3087,74200 +doTick3174,76392 +doIpid3206,77389 +doOpid3222,77677 +doKill3238,77972 +doFork3261,78407 +forkLispX_FE3274,78628 +doBye3435,83188 +byeE3447,83360 +finishE3459,83671 ./subr.l,2147 doCar5,71