【发布时间】:2014-03-15 23:52:48
【问题描述】:
假设我有以下两个文件:
;; demo.scm
(define-module (demo)
#:export (f))
(define (g x) 1)
(define (f x) (g x))
...在同一目录中:
;; use-demo.scm
(add-to-load-path ".")
(use-modules (demo))
(define (g x) (+ x 1))
(display (f 5))
(newline)
在 Guile (2) 中运行 use-demo.scm,我得到输出 1。所以看起来函数f 已经“关闭”了在模块demo 中定义的函数g。有没有办法解决这个问题?我真的很想使用我在use-demo.scm 中重新定义的g 的版本。
【问题讨论】: