mes: Add take-while.
authorJan Nieuwenhuizen <janneke@gnu.org>
Thu, 27 Dec 2018 15:36:22 +0000 (16:36 +0100)
committerJan Nieuwenhuizen <janneke@gnu.org>
Thu, 27 Dec 2018 15:36:22 +0000 (16:36 +0100)
* mes/module/srfi/srfi-1.mes (take-while): New function.

mes/module/srfi/srfi-1.mes

index 3b3458381ea21c5bfca95028aef4abb1eb1a73f3..8a69b7bce403793e179c832da8fdb306bdd93ef7 100644 (file)
                 (cons (car lst) (loop (cdr lst))))))))
 
 (include-from-path "srfi/srfi-1.scm")
+
+(define (take-while pred lst)
+  (if (or (null? lst) (not (pred (car lst)))) '()
+          (cons (car lst) (take-while pred (cdr lst)))))