]> git.donarmstrong.com Git - lilypond.git/commitdiff
function-{and,or}
authorHan-Wen Nienhuys <hanwen@xs4all.nl>
Fri, 8 Dec 2006 14:58:16 +0000 (15:58 +0100)
committerHan-Wen Nienhuys <hanwen@xs4all.nl>
Fri, 8 Dec 2006 14:58:16 +0000 (15:58 +0100)
scm/lily-library.scm

index 3575e13264db2bfe53a05633b45d05a501d523fe..fc8d291dec662e041b4513336aaea10b94934230 100644 (file)
@@ -230,6 +230,18 @@ found."
 ;;;;;;;;;;;;;;;;
 ;; list
 
+(define (functional-or . rest)
+  (if (pair? rest)
+      (or (car rest)
+          (apply functional-and (cdr rest)))
+      #f))
+
+(define (functional-and . rest)
+  (if (pair? rest)
+      (and (car rest)
+          (apply functional-and (cdr rest)))
+      #t))
+
 (define (split-list lst n)
   "Split LST in N equal sized parts"