Let's get this straight: The name of it is called "`named let'". The name of it actually is "named-let". But it is called "named let". And it actually *is* "(defmacro named-let (name bindings . body) ...)"? --Guy Yes, that's right. Also, if if we optionally allow the current syntax (let <name> <bindings> . <body>) then the name of it could also be called "a named form of let".