summaryrefslogtreecommitdiff
path: root/geiser
diff options
context:
space:
mode:
authorJose Antonio Ortega Ruiz <jao@gnu.org>2013-09-13 20:36:56 +0200
committerJose Antonio Ortega Ruiz <jao@gnu.org>2013-09-13 20:36:56 +0200
commit9d0d38a20850f3f9eecd74267970748bbcbc6bdc (patch)
tree3298a3c4f2976c39864deb23a4341aabde6930fd /geiser
parent6c9efbc61592aa24429d5c29b641b7f1ff1eff51 (diff)
downloadgeiser-guile-9d0d38a20850f3f9eecd74267970748bbcbc6bdc.tar.gz
geiser-guile-9d0d38a20850f3f9eecd74267970748bbcbc6bdc.tar.bz2
Guile: augmenting %load-compiled-path too
We add the paths in geiser-guile-load-path also to %load-compiled-path, and new directories added to the load path via geiser-add-to-load-path are added to both %load-path and %load-compiled-path. Here's hope Ludovic will like all these additions!
Diffstat (limited to 'geiser')
-rw-r--r--geiser/evaluation.scm15
1 files changed, 11 insertions, 4 deletions
diff --git a/geiser/evaluation.scm b/geiser/evaluation.scm
index 5562382..21f8772 100644
--- a/geiser/evaluation.scm
+++ b/geiser/evaluation.scm
@@ -1,6 +1,6 @@
;;; evaluation.scm -- evaluation, compilation and macro-expansion
-;; Copyright (C) 2009, 2010, 2011 Jose Antonio Ortega Ruiz
+;; Copyright (C) 2009, 2010, 2011, 2013 Jose Antonio Ortega Ruiz
;; This program is free software; you can redistribute it and/or
;; modify it under the terms of the Modified BSD License. You should
@@ -108,8 +108,15 @@
(lambda ()
(pretty-print (tree-il->scheme (macroexpand form)))))))
+(define (add-to-list lst dir)
+ (and (not (member dir lst))))
+
(define (ge:add-to-load-path dir)
(and (file-is-directory? dir)
- (not (member dir %load-path))
- (begin (set! %load-path (cons dir %load-path))
- #t)))
+ (let ((in-lp (member dir %load-path))
+ (in-clp (member dir %load-compiled-path)))
+ (when (not in-lp)
+ (set! %load-path (cons dir %load-path)))
+ (when (not in-clp)
+ (set! %load-compiled-path (cons dir %load-compiled-path)))
+ (or in-lp in-clp))))