From 81488c3ea8d66680f739cee087ad9aa7619f5e0e Mon Sep 17 00:00:00 2001 From: Akshay Date: Sun, 18 Apr 2021 11:59:44 +0530 Subject: clippy lint; add `get-pixel` primitive --- src/lisp/std.lisp | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'src/lisp/std.lisp') diff --git a/src/lisp/std.lisp b/src/lisp/std.lisp index 6c5beed..a256125 100644 --- a/src/lisp/std.lisp +++ b/src/lisp/std.lisp @@ -40,6 +40,13 @@ (cons (func (car ls)) (map func (cdr ls))))) +(define (zip l1 l2) + (if (or (null? l1) + (null? l2)) + '() + (cons (cons (car l1) (car l2)) + (zip (cdr l1) (cdr l2))))) + (define (filter pred ls) (if (null? ls) '() @@ -57,3 +64,11 @@ (define (sum ls) (fold 0 + ls)) (define (product ls) (fold 1 * ls)) + +(define (reverse ls) + (begin + (define (rev-helper p acc) + (if (null? p) + acc + (rev-helper (cdr p) (cons (car p) acc)))) + (rev-helper ls '()))) -- cgit v1.2.3