On 05-08-2022 10:31, Ludovic Courtès wrote:
I understand what you’re saying (I’m quite familiar with Guile’s module system :-) and I do agree that #:ensure #t can lead to bad surprises), but I don’t think this is correct:--8<---------------cut here---------------start------------->8--- scheme@(guile-user)> (resolve-interface '(xxx)) ice-9/boot-9.scm:1685:16: In procedure raise-exception: no code for module (xxx) Entering a new prompt. Type `,bt' for a backtrace or `,q' to continue. scheme@(guile-user) [1]> ,q scheme@(guile-user)> (resolve-module '(xxx) #f #:ensure #f) $1 = #f --8<---------------cut here---------------end--------------->8--- This is because ‘resolve-interface’ does (resolve-module … #:ensure #f). Does that make sense?
Oops, I thought the #:ensure #f was universal to all the resolve-... interfaces, but apparently not for resole-interface! In that case, no problem, though I'd like to eventually make some changes to the Guile docs for clarity (and maybe change the default #:ensure #t -> #f)
Greetings, Maxime.
OpenPGP_0x49E3EE22191725EE.asc
Description: OpenPGP public key
OpenPGP_signature
Description: OpenPGP digital signature