On Fri 12 Aug 2011 22:58, Eli Barzilay <[email protected]> writes: > you'd expect `load' to be a > completely run-time thing (open+read+eval), so the CWD makes perfect > sense. This way you have a single behavior rather than something that > changes based on whether it's used in some file or on the REPL. > > And given that the latter will be popular for a while longer, it's > especially surprising that it's different from inside a module. Given > that, it might make more sense to have it use the CWD when used on the > REPL, and throw a syntax error from inside a module.
The problem is that in the Guile 1.8, read and expansion and evaluation all happened at the same time, so our users were not accustomed to the subtleties. This terrible thing that Guile 2.0 does is the best that we can do to support old code, it seems. I respect racket's "just make a new language" model, but Guile is trying to incrementally migrate old code over to new idioms. We have to make it easy and mostly compatible though, or users will revolt. Andy -- http://wingolog.org/ _______________________________________________ Scheme-reports mailing list [email protected] http://lists.scheme-reports.org/cgi-bin/mailman/listinfo/scheme-reports
