diff options
Diffstat (limited to 'sisc.init')
-rw-r--r-- | sisc.init | 39 |
1 files changed, 24 insertions, 15 deletions
@@ -17,18 +17,22 @@ (define (program-vicinity) (current-directory)) -(define (library-vicinity) - (string-append - (or (getenv "sisc.slib") - (getenv "sisc.lib") - (error "You must define the sisc.slib or sisc.lib property")) - "/")) - -(define (implementation-vicinity) - (string-append - (or (getenv "sisc.home") - (error "You must define the sisc.home property")) - "/")) +(define library-vicinity + (let ((lib-path + (string-append + (or (getenv "sisc.slib") + (getenv "sisc.lib") + (error "You must define the sisc.slib or sisc.lib property")) + "/"))) + (lambda () lib-path))) + +(define implementation-vicinity + (let ((impl-path + (string-append + (or (getenv "sisc.home") + (error "You must define the sisc.home property")) + "/"))) + (lambda () impl-path))) (define (user-vicinity) "") @@ -102,6 +106,7 @@ ;(SLIB:LOAD-COMPILED "filename") vicinity srfi-59 + srfi-96 ;;; Scheme report features ;; R5RS-compliant implementations should provide all 9 features. @@ -141,7 +146,7 @@ ;;; Other common features - srfi ;srfi-0, COND-EXPAND finds all srfi-* + srfi-0 ;srfi-0, COND-EXPAND finds all srfi-* ;;; sicp ;runs code from Structure and ;Interpretation of Computer ;Programs by Abelson and Sussman. @@ -335,9 +340,13 @@ ;;@ At this point SLIB:LOAD must be able to load SLIB files. (define slib:load slib:load-source) -;; If your implementation provides R4RS macros: +;;; If your implementation provides R4RS macros: (define macro:eval slib:eval) -(define macro:load load) +(define macro:load slib:load-source) + +;;; If your implementation provides syntax-case macros: +;;(define syncase:eval slib:eval) +;;(define syncase:load slib:load-source) ;@ (define gentemp gensym) |