~ chicken-core (chicken-5) 894f9caa7327a0f5266ff69019bdcda43d36d122


commit 894f9caa7327a0f5266ff69019bdcda43d36d122
Author:     Evan Hanson <evhan@foldling.org>
AuthorDate: Sat May 21 17:18:35 2016 +1200
Commit:     Peter Bex <peter@more-magic.net>
CommitDate: Sun May 22 13:22:31 2016 +0200

    Make `repository-path` a proper parameter
    
    This makes it compatible with the new `convert?` and `set?` arguments
    that parameterize uses to separately convert and then change a
    parameter's value. See #1227 and a94b69e.
    
    Signed-off-by: Peter Bex <peter@more-magic.net>

diff --git a/eval.scm b/eval.scm
index c4755c50..fba6d5da 100644
--- a/eval.scm
+++ b/eval.scm
@@ -1172,19 +1172,15 @@
 		  [else p] ) ) ) ) ) ) )
 
 (define repository-path
-  (let ((rpath
-	 (if (##sys#fudge 22)		; private repository?
-	     (foreign-value "C_private_repository_path()" c-string)
-	     (or (get-environment-variable repository-environment-variable)
-		 (chicken-prefix
-		  (##sys#string-append 
-		   "lib/chicken/"
-		   (##sys#number->string (##sys#fudge 42))) )
-		 install-egg-home))))
-    (lambda (#!optional val)
-      (if val
-	  (set! rpath val)
-	  rpath))))
+  (make-parameter
+   (if (##sys#fudge 22) ; private repository?
+       (foreign-value "C_private_repository_path()" c-string)
+       (or (get-environment-variable repository-environment-variable)
+	   (chicken-prefix
+	    (##sys#string-append
+	     "lib/chicken/"
+	     (##sys#number->string (##sys#fudge 42))))
+	   install-egg-home))))
 
 (define ##sys#repository-path repository-path)
 
Trap