diff options
Diffstat (limited to 'testcases-cons')
-rw-r--r-- | testcases-cons | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/testcases-cons b/testcases-cons index 4dc2788..c80bb5d 100644 --- a/testcases-cons +++ b/testcases-cons @@ -799,3 +799,32 @@ BEGIN { (1 2 3 . 4) (2 3 . 4) (3 . 4) +-- +42: +$cppawk ' +#include <cons.h> + +function rev(li, + out) +{ + out = nil + + while (!endp(li)) + push(pop(li), out) + + return out +} + +BEGIN { + print sexp(rev(list(1, 2, 3))); + x = nil + print sexp(pop(x)) + x = cons(3, 4) + print sexp(pop(x)) + print x +}' +: +(3 2 1) +nil +3 +4 |