On this page:
13.1 Higher Order Predicates
conjoin
disjoin
Version: 5.3

13 Functions

Carl Eastlund <cce@racket-lang.org>

This library is unstable; compatibility will not be maintained. See Unstable: May Change Without Warning for more information.

 (require unstable/function)

This module provides tools for higher-order programming and creating functions.

13.1 Higher Order Predicates

procedure

((conjoin f ...) x ...)  boolean?

  f : (-> A ... boolean?)
  x : A
Combines calls to each function with and. Equivalent to (and (f x ...) ...)

Examples:

(define f (conjoin exact? integer?))
> (f 1)

#t

> (f 1.0)

#f

> (f 1/2)

#f

> (f 0.5)

#f

procedure

((disjoin f ...) x ...)  boolean?

  f : (-> A ... boolean?)
  x : A
Combines calls to each function with or. Equivalent to (or (f x ...) ...)

Examples:

(define f (disjoin exact? integer?))
> (f 1)

#t

> (f 1.0)

#t

> (f 1/2)

#t

> (f 0.5)

#f