On Mar 29, 2016, at 6:05 PM, Wette, Matthew R (3441) < address@hidden> wrote:
I think this is a bug in guile relating to "include":
a.scm: (define a 1)
b.scm: (include "a.scm") (display a) (newline)
guile -l b.scm # prints 1
now update
a.scm: (define a 2)
guile -l b.scm # still prints 1
I have noticed this behavior and have learned to live with it. Given the following from the Guile Reference manual (2.0.11), I think it is not considered a bug.
"On the other hand,
include
does have all the disadvantages of early binding: once the code with the
include
is compiled, no change to the included file is reflected in the future behavior of the including form.”
And I will add that an implementation that checked all includes would have to carry a tree of source dependencies for each binary .go file. The alternative seems unattractive to me so I am happy to live with the current implementation. — Matt
|