Re: SRFI-5 breaks original let?
Martin Gasbichler <[email protected]>
| Newsgroups | gmane.lisp.scheme.scsh |
|---|---|
| Message-ID | <36brfg13e9.fsf__44112.7648846761$1097062851$gmane$org@informatik.uni-tuebingen.de> |
Andreas Bernauer <[email protected]> writes: > Gary Baumgartner wrote in June: >> In 0.6.6, opening srfi-5 seems to break some original uses of let: >> >> > (let () 'hi) >> 'hi >> > ,open srfi-5 >> Load structure srfi-5 (y/n)? y >> [srfi-5 /usr/lib/scsh/srfi/srfi-5.scm] >> > (let () 'hi) >> >> Warning: invalid expression >> () >> >> Error: undefined variable >> standard-let >> (package srfi-5) >> >> >> The file scheme/srfi/srfi-5.scm in the source distribution rewrites let >> to standard-let, but there is no standard-let defined. A fix seems to be >> to change >> >> (define-structure srfi-5 (export (let :syntax)) >> (open (modify scheme-level-2 (hide let))) >> >> to >> >> (define-structure srfi-5 (export (let :syntax)) >> (open (modify scheme-level-2 (rename (let standard-let)) (hide let))) >> >> in scheme/more-packages.scm. >> >> I'm not familiar with the details of the structure system, so I may not >> be opening the package correctly. Furthermore, if it is a bug I'm unclear >> whether (hide let) should be left in. > > Has this been adressed by anybody in the meanwhile? No, strange, I don't even remeber Gary's email. > As far as I can see, this is a bug (either in scsh or in srfi-5's > example implementation, depending on how you look at it) and Gary's > proposal seems to correct it. Yes, even though the HIDE clause is superfluous. I'll fix it in CVS and in the Scheme 48 sources. -- Martin