; readfile.scm (define read-file (lambda (fname) (define read-source (lambda (in-port) (let ((char (read-char in-port))) (if (eof-object? char) "" (string-append (string char) (read-source in-port)))) ) ) (let* ((fp (open-input-file fname)) (contents (read-source fp))) (close-input-port fp) contents) ) )