Hi again, On Wed, Aug 29 2012, Michael Wilber wrote:
> Hey, geiser users! > > So in racket from git and latest geiser from git, when I require > slideshow/pict from geiser (or indirectly by enter!-ing a file that > requires slideshow/pict), it fails: > > Welcome to Racket v5.3.0.14. > racket@> (require slideshow/pict) > define-values: assignment disallowed; > cannot re-define a constant > constant: invoke-unit/core > in module: "/home/michael/racket/collects/racket/unit.rkt" > errortrace...: > > /home/michael/.emacs.d/vendor/geiser/scheme/racket/geiser/enter.rkt:146:10: > (eval code) > racket@> I've been playing a bit with this. The bad news is that i hadn't realized that Racket's current-load/use-compiled is not exported and i cannot call it directly (that explains why my own version). The not so bad news is that the problem is actually in Racket, not in Geiser. If i try Racket's enter! in a vanilla racket session i get: $ ./racket Welcome to Racket v5.3.0.21. > (enter! slideshow/pict) define-values: assignment disallowed; cannot re-define a constant constant: invoke-unit/core in module: "/home/jao/src/racket/collects/racket/unit.rkt" > So it's also a problem with current-load/use-compiled (as to why in Geiser a require uses also the latter, it's because Geiser needs to keep track of all modules as they're loaded, and i didn't find any hook to get notified of those events...). Cheers, jao -- For every complex problem there is an answer that is clear, simple, and wrong. —Henry Mencken