[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Some easy ones (?)

In article <[G.BBN.COM]23-Jul-86 02:30:50.NGALL> NGALL@G.BBN.COM writes:

>    ---------------------------------------------------------------------------
>    Proposal #6: Parsing in &BODY
>    Extend the syntax of an &BODY parameter to DEFMACRO to allow writing
>    &body (body-var [declarations-var [doc-string-var]]).  If only body-var
>    appears in parentheses, it means the same as a body-var with no
>    parentheses.  Otherwise, it means to give the original body to
>    PARSE-BODY (with documentation-allowed-p true iff the doc-string-var is
>    specified) and then bind the variables to the corresponding values
>    returned by PARSE-BODY.  This is purely a syntactic convenience for the
>    user of DEFMACRO so that he doesn't have to use &ENVIRONMENT and then
>    call PARSE-BODY himself.
>How about a compromise?
>&body may be follwed by a list of the form
>(&forms {var|(var[initform[svar]])}
> [&declarations <<ditto>>
>  [&doc-string <<ditto>>]])

Ugh.  This seems like extra hair in the language to save macro writers
1 line of code every once in a while.  Remember, if it goes in the language,
then every implementation *must* incur the space overhead, not to mention
that it has to be written about in the standard, in manufacturer's manuals,
in textbooks, ad nauseam.  It's just not worth it.