Hi! Thanks for the patch.
Andreas Rottmann <a.rottm...@gmx.at> writes: > This is a prerequisite for the patch implementing SRFI-38, which I'll > post next. > > > From: Andreas Rottmann <a.rottm...@gmx.at> > Subject: Use a fluid for the list of the reader's "hash procedures" > > This allows customizing the reader behavior for a dynamic extent more easily. > > * libguile/read.c (scm_read_hash_procedures): Renamed to > `scm_i_read_hash_procedures'. > (scm_i_read_hash_procedures_ref, scm_i_read_hash_procedures_set_x): > New (internal) accessor functions for the fluid. > (scm_read_hash_extend, scm_get_hash_procedure): Use these accessor > functions. > (scm_init_read): Create the fluid, named `%read-hash-procedures' instead of > the previous plain list `read-hash-procedures'. Hmm that’s an incompatible change. ‘scm_read_hash_procedures’ and ‘read-hash-procedures’ aren’t documented, but they’re public. The latter can probably be kept compatible like this: (begin-deprecated (define %deprecated-read-hash-procedures (make-procedure-with-setter (lambda () (fluid-ref %read-hash-procedures)) (lambda (v) (fluid-set! %read-hash-procedures v)))) (define-syntax read-hash-procedures (lambda (s) (syntax-case s () (_ (%deprecated-read-hash-procedures)))))) Nevertheless I’m OK with the patch (plus the above addition), though I’d like to hear what other people think. Thanks, Ludo’.