[plt-scheme] Scoping of define/kw

From: Matt Jadud (mcj4 at kent.ac.uk)
Date: Tue Jul 25 10:08:30 EDT 2006

Hi all,

This is an easy one, and perhaps there's a historic RTFM that's called 
for. Because I'm lazy, I've asked here... perhaps that's a bad thing.

(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?

I encountered this by mistake/happenstance, but thought I'd ask just the 


Posted on the users mailing list.