Node: Booleans, Next: , Previous: Numbers, Up: Standard Procedures



Booleans

Of all the standard Scheme values, only #f counts as false in conditional expressions. Except for #f, all standard Scheme values, including #t, pairs, the empty list, symbols, numbers, strings, vectors, and procedures, count as true.

Boolean constants evaluate to themselves, so they do not need to be quoted in programs.

not obj R5RS
Not returns #t if obj is false, and returns #f otherwise.
            (not #t)         =>  #f
            (not 3)          =>  #f
            (not (list 3))   =>  #f
            (not #f)         =>  #t
            (not '())        =>  #f
            (not (list))     =>  #f
            (not 'nil)       =>  #f
          

boolean? obj R5RS
Boolean? returns #t if obj is either #t or #f and returns #f otherwise.
            (boolean? #f)         =>  #t
            (boolean? 0)          =>  #f
            (boolean? '())        =>  #f