> On 24 Jan 2023, at 10:02, Ludovic Courtès wrote: > > Hi! > > lloda 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. Hmm, it would seem so, but the way the Scheme reports use ‘expression’, it's not. I've added an explicit definition of what the let-expression body is in the updated patch, I hope that reads better. Also tried to address your other comments. Thanks Daniel >> The Scheme reports use one ‘’ 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’.