Your characterization suggests another possibility: an optional
argument when setting a property to indicate whether the setting is
ephemeral.
That is, we would still have one function for ephemeral or not, but the
difference would be selected by an extra argument, instead selected by
the shape of the key. Along those lines, preservation would be a
feature of the setting, instead of a feature of the key.
This approach provides a slightly better explanation for 'paren-shape
--- it's attached as non-ephemeral by the reader --- and it avoids
changing the notion of equality for property keys. Then again, we'd
have a different compatibility issue: anything other than the reader
that adds 'paren-shape would need to explicitly add the property as
non-ephemeral, otherwise it would revert (in a sense) to the pre-v6.3
behavior.
Any opinion on this new option? So far, I like it the best, but I
haven't thought about it as much as the others.
>
https://groups.google.com/d/msgid/racket-dev/CAL3TdOPBtQr704xzcbWQjdE0R%2BjAnaN
> qUEpzrs6jEqFycqpckg%
40mail.gmail.com.