Add the ability to declare an empty dict as `{:}`

I made a proposal with a modified grammar some years ago that would make {,} the empty set. If there was a real desire for this, a similar change could be made so that both {,} == set() and {:} == dict() such that {} could, eventually over a very long time, be removed.

One thing that actually changing the grammar unveiled was that once {,} becomes a legal literal, it becomes extremely easy to make (,) legal, which IMO is another wart on the language (parentheses don’t make tuples, commas do; oh, except for an empty tuple, then you must always use parentheses and no comma).

3 Likes