/usr/lib/s9fes/equal-cip.scm is in scheme9 2010.11.13-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | ; Scheme 9 from Empty Space, Function Library
; By Nils M Holm, 2010
; See the LICENSE file of the S9fES package for terms of use
;
; (equal-ci? object1 object2) ==> boolean
;
; EQUAL-CI? is like EQUAL? but compares strings and characters
; using case-insensitive predicates whereas EQUAL? distinguishes
; case.
;
; Example: (equal-ci? '(#\A ("b")) '(#\a ("B"))) ==> #t
(define (equal-ci? a b)
(cond ((eq? a b)
#t)
((and (pair? a)
(pair? b))
(and (equal-ci? (car a) (car b))
(equal-ci? (cdr a) (cdr b))))
((char? a)
(and (char? b)
(char-ci=? a b)))
((string? a)
(and (string? b)
(string-ci=? a b)))
((vector? a)
(and (vector? b)
(equal-ci? (vector->list a)
(vector->list b))))
(else
(eqv? a b))))
|