And you can use dict() for an empty dictionary, and list() for an empty list.
https://www.inspiredpython.com/article/watch-out-for-mutable...
However, using the literal syntax does seem to be more efficient. So that is an argument for having dedicated syntax for an empty set.
Factory functions like list/tuple/set are function calls and are executed and avoid this problem. Hence why professional python devs default to `None` and check for that and _then_ initialise the list internally in the function body.
Adding {/} as empty set is great, sure; but that again is just another reified instance and the opposite of set() the function.