Hi! lloda <ll...@sarc.name> skribis:
>>> @lisp >>> -(@var{test} @var{body} @dots{}) >>> +(@var{test} @var{body}) >> >> I think removing dots is incorrect here because it suggests, according >> to the typographic conventions used in the document, that there can only >> be a single expression. [...] > This was actually the main thing I wanted to fix in this patch. Linus' patch > had ‘body ...’ but that clearly means ‘zero or more bodies’, which doesn't > work because there's exactly one ‘body’. I.e. ‘body’ isn't an expression that > is tagged ‘body’, it's, well, a ‘body’. Yeah, ‘body’ is a bit confusing here; in the example above, I’d have written: (@var{test} @var{exp} @dots{}) because that’s what the “body” is: one or more expressions. > The Scheme reports use one ‘<body>’ and no dots in all these definitions. See > also the definition of let in the linked section ‘Local Bindings’, which > again uses ‘body’ and no dots. I hoped that section would count as definition > of ‘body’, and the section on ‘Internal Definitions’ explains precisely what > can go into ‘body’, so I linked to that as well. I see that isn't clear > enough. Maybe ‘body’ should be explicitly defined in one of these sections? Damn it, I hadn’t realized this was a widespread convention, but yeah, R5RS and parts of the Guile manual follow this convention. So hmm, the change you propose makes a lot of sense to me now. So yeah overall I guess we should always write one of: (something @var{body}) or: (something @var{exp} @dots{}) Using @var{body} like you do in this patch is consistent with other parts of the manual, so it LGTM. Thanks, Ludo’.