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

Issue: TAGBODY-CONTENTS (Version 4)



    Date: 30 Nov 88 21:03 PST
    From: masinter.pa@Xerox.COM

    The acceptability of the proposal might improve with some rewording, e.g.,
    expressing it as a constraint on GO instead of on TAGBODY.

    For example:

    A TAGBODY's body consists of arbitrary data elements with arbitrary
    duplications. Elements that are lists (CONSP) are evaluated in
    left-to-write order. Any other elements are ignored by TAGBODY. However,
    GO is only legal when given a symbol or integer. The results of executing
    GO when there is more than one instance of the same (EQL) symbol or integer
    at the top level of any TAGBODY are unspecified.

I'd say:

A TAGBODY's body consists of arbitrary data elements with arbitrary
duplications. Elements that are lists (CONSP) are evaluated in
left-to-right order. Any other elements are ignored by TAGBODY. However,
GO is only legal when the given tag is a symbol or integer. The results
of executing GO when there is more than one instance of the same (EQL)
tag at the top level of the innermost TAGBODY containing that tag are
unspecified.

    Thus

    (TAGBODY 3.4 4.5 (print "hi there"))

    is legal, although useless just as (PROGN 3.4 4.5 (print "hi there")) might
    be.

Personally, I like this approach.