Regarding the object.method notation, I did a complete proposal for
extention of Ada 83 to allow just that, with inheritance and all, as
part of my PhD thesis. There is also a comparison with Ada 95 tagged
types (to which I would add some elements now that I am more familiar
with them, BTW).
You can read it at:
if you are interested.