Hi Mark, Mark H Weaver writes:
> Sorry, I meant to give an example of this. Please see srfi/srfi-45.scm > in the Guile source distribution for an example of the preferred way to > override core bindings, such that only modules that import your module > are affected. Thanks for the example. I will make that change for the next release. Actually, it's good that you mentioned it now because I want to go back and make file-name-specialized variants of the rest of the core procedures that normally take file-name strings (e.g. file ports). I'll admit this wasn't a carefully thought-out strategy. I was going by the example in the GOOPS "Generic Function and Method Examples" section of the manual (where + is specialized to handle <my-complex> objects). I was having trouble figuring out how to do this such that the code could be distributed as a module, and that was the only section that I found that gave any clue. I missed, however, the "#:replace" functionality of define-module. I would suggest that this section of the manual be updated to demonstrate the preferred way to do it. I also have no problem with replacing my specialized append and append! methods with file-name-append and file-name-append! (in fact, that's what they were originally, before I de-namespaced the method symbols). It's still early days, so few people, if anybody, will be affected by such a change. Thanks for the tip! -- -brandon