On 2025-Mar-26, David G. Johnston wrote: > The argument being made is that the enum patch adheres to established > practices; and when adding new code that new code is encouraged to adhere > to how existing code is written. A vote to keep to such guidelines seems > reasonable and sufficient; and can outweigh quite a bit of deficiency such > existing code may have relative to the new proposal. The burden is on the > new code to justify why it should violate established conventions.
I think the goal of unifying the various pieces of code that handle options by building a generic "engine" is a good one, and I tend to agree with the argument that the less things this "engine" has to support (while keeping the functionality the same), the better. Given that we've gone far and long without needing the "isset" flag, and that it's not clear that we really need the concept, I'd rather go with not having it. Now -- Nikolay also appears to be saying that we either choose the concept of a "default" or the concept of the "isset" flag, but not both. That says to me that the other option would be to remove all default values and rely solely on isset. Is that a workable option? If it's not, then it would be clear to me that we'd rather stick with defaults. But if it is, and if that would get us to an overall simplification of the concepts, then perhaps that is better. (In other words: for the other enums that are currently imitating booleans, can we remove that and instead use isset? And are there other uses of default values that aren't booleans that can be turned into isset or into something different?) -- Álvaro Herrera 48°01'N 7°57'E — https://www.EnterpriseDB.com/ "Las navajas y los monos deben estar siempre distantes" (Germán Poo)