That’s an extra step just to circumvent an issue that could be solved at the specification level.
You have the name of the elements specified directly in the file (like extras
) which helps make it more self documenting.
That’s an extra dependency you need to have while you could rely on the fact that any TOML parser will return native types that are easily manipulable.
So, we just give up and don’t try to improve on what we have? Shouldn’t this be a goal in itself? To provide a user/developer experience that is on par with what other languages have?
That being said, one reason other languages were able to pull this off is because they mostly have one or two tools of reference, instead of several tools like we have in Python, so making a transition like this is easier.