PEP 544 supports structural typing, but to declare a structural type you must inherit from Protocol.
That smells a lot like nominal typing to me.
I'm not sure what inheriting from Protocol has to do with nominal typing, even though I would personally prefer to have a separate keyword for declaring protocols. But current typing philosophy is to prefer structural over nominal typing:
Personally I think that the typing infrastructure should move even more towards structural typing than it does at the moment and there is certainly a lot of room to grow. But overall I feel that typing is moving towards allowing more duck typing than it does at the moment.
- Sebastian