/usr/lib/substitute.scm is in scheme9 2013.11.26-1.
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 | ; Scheme 9 from Empty Space, Function Library
; By Nils M Holm, 2009
; Placed in the Public Domain
;
; (substitute pair alist) ==> pair
;
; Substitute objects in a given PAIR. The association list
; ALIST contains the objects to be substituted as keys and
; the corresponding substitutes as values.
;
; Example: (substitute '(* (+ 5 7) 9) '(((+ 5 7) . 12))) ==> (* 12 9)
(define (substitute x a)
(cond ((assoc x a) => cdr)
((pair? x) (cons (substitute (car x) a)
(substitute (cdr x) a)))
(else x)))
|