1; Part of Scheme 48 1.9. See file COPYING for notices and license. 2 3; Authors: Mike Sperber, Robert Ransom 4 5(define (symbol=?/2 a b) 6 (if (or (not (symbol? a)) 7 (not (symbol? b))) 8 (assertion-violation 'symbol=? "non-symbol argument" a b)) 9 (eq? a b)) 10 11(define (boolean=?/2 a b) 12 (if (or (not (boolean? a)) 13 (not (boolean? b))) 14 (assertion-violation 'boolean=? "non-boolean argument" a b)) 15 (eq? a b)) 16 17(define-n-ary-comparison symbol=? symbol? values symbol=?/2) 18(define-n-ary-comparison boolean=? boolean? values boolean=?/2) 19 20(define-n-ary-comparison char=? char? values prim:char=?) 21(define-n-ary-comparison char<? char? values prim:char<?) 22(define-n-ary-comparison char>? char? values prim:char>?) 23(define-n-ary-comparison char<=? char? values prim:char<=?) 24(define-n-ary-comparison char>=? char? values prim:char>=?) 25(define-n-ary-comparison string=? string? values prim:string=?) 26(define-n-ary-comparison string<? string? values prim:string<?) 27(define-n-ary-comparison string>? string? values prim:string>?) 28(define-n-ary-comparison string<=? string? values prim:string<=?) 29(define-n-ary-comparison string>=? string? values prim:string>=?) 30 31