two-bucket: Do not constrain bucket representation to Strings #989
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The description currently specifies that buckets are represented, in
both the input and the output, as strings.
This seems overly constraining. Consider those tracks that wish to
represent these buckets as variants of a tagged union or of an enum for
the purpose of better type safety. These tracks have these options in
order to do so:
contravention of it. But it is confusing if the README contradicts the
tests.
because only two lines need to change, and it adds extra maintenance
burden to have to maintain the custom description.md. Consider that if
this description.md changes, the changes will probably need to be
copied to each custom description.md
the above text about using Strings, we're using tagged unions / enums"
so that this will be appended to the description. But it seems too
strange to have a README contradict itself.
Removing the specification of the buckets as a string allows the
flexibility, but now it acquires some inconsistency. All inputs/outputs
that are numeric are explicitly stated to be so, but the specification
is silent on the bucket representation. It would not be unreasonable for
a reader of this specification to say "But wait! You told me what types
all the other inputs/outputs are, why didn't you tell me about the
buckets?"
If this commit is accepted, it implies we value the flexibility over
the consistency.
Closes #990 by mutual exclusion.