diff options
author | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2013-09-13 20:36:56 +0200 |
---|---|---|
committer | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2013-09-13 20:36:56 +0200 |
commit | 393305d2fcf612f4e5f99383f680f819b458c326 (patch) | |
tree | c74f36af8672b6c6c8c2e9624df19f2804cbd38c /scheme/guile/geiser/evaluation.scm | |
parent | ba42cac06db062d5392342930d3d175c1d3cf763 (diff) | |
download | geiser-guile-393305d2fcf612f4e5f99383f680f819b458c326.tar.gz geiser-guile-393305d2fcf612f4e5f99383f680f819b458c326.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 'scheme/guile/geiser/evaluation.scm')
-rw-r--r-- | scheme/guile/geiser/evaluation.scm | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/scheme/guile/geiser/evaluation.scm b/scheme/guile/geiser/evaluation.scm index 5562382..21f8772 100644 --- a/scheme/guile/geiser/evaluation.scm +++ b/scheme/guile/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)))) |