[plt-scheme] Scoping of define/kw
On Jul 25, Matt Jadud wrote:
> [...]
> (define/kw (extract-and-get-meta strukt strukt-key
> #:key [ethunk
> (lambda ()
> (error 'get-meta "No
> metadata: ~a" strukt-key))])
> (let ([m (node-meta strukt)])
> (hash-table-get m strukt-key ethunk)))
> ---
>
> This code compiles under v350, but dies under 300/301.5 (those are
> the two previous versions I have laying around). It would appear
> that 'strukt-key' is in scope of the keyword parameter 'ethunk', but
> not in scope in 300/301? [...]
`strukt-key' *should* be in scope for the `ethunk' expression. There
used to be a bug in the scope that I fixed long ago -- probably after
301 came out.
--
((lambda (x) (x x)) (lambda (x) (x x))) Eli Barzilay:
http://www.barzilay.org/ Maze is Life!