Skip to content

Minor issues in translation algorithm for Grouping and Aggregation #247

@hartig

Description

@hartig

While working on PR #245, I noticed that the translation algorithm in Section 18.3.4.1 Grouping and Aggregation has a number of minor issues that should be fixed:

  1. The algorithm introduces variable A as "the empty sequence" and, later, says Ai := Aggregation(...) in a number of places. It is not clear what this is supposed to mean. I am guessing it is meant to extend the length of A such that it has an i-th position and then assign the given Aggregation(...) expression to this position; essentially, appending the Aggregation(...) expression to the end of A. A more readable way to write this is to do exactly as done for adding elements to E within the same algorithm, namely:
A := A append Aggregation(...)
  1. At the end, the algorithm says A := Ai, ..., Ai-1 I assume that Ai here is meant to be A1. Also, after applying my proposal of the previous point, this whole line can be removed completely.
  2. The algorithm mentions some symbol called aggi without saying anything about it. It took me a long time to figure out that this is meant to be a new (fresh) variable for every value of i during the algorithm. This should be made more explicit in the algorithm.

Metadata

Metadata

Assignees

No one assigned

    Labels

    spec:editorialMinor change in the specification (markup, typo, informative text; class 1 or 2)

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions