logic-utils.scm 385 B

1234567891011121314151617181920212223
  1. (library (logic-utils)
  2. (export any all)
  3. (import
  4. (except (rnrs base) let-values)
  5. (only (guile) lambda* λ)
  6. (srfi srfi-1)))
  7. (define any
  8. (lambda* (. args)
  9. (reduce (λ (arg acc)
  10. (or acc arg))
  11. #f
  12. args)))
  13. (define all
  14. (lambda* (. args)
  15. (reduce (λ (arg acc)
  16. (and acc arg))
  17. #t
  18. args)))