"Famous but controversial golfer Tiger Woods adopted a cat" might be awkward, but it's hard for me to buy an argument that it's either unnatural or even particularly hard to understand.
Not really. And the Tiger Woods example is a whole phrase with a verb and an noun (describing what he did to whom), so not representative of a type declaration (which is just just describing what thing something of a specific name is).
So, it's more like:
Tiger Woods: a golfer.
vs: A golfer: Tiger Woods.
Which of course is an argument for types on the right -- the first reads much better. Tiger Woods: a golfer.
Jon Rahm: a golfer.
Bryson DeChambeau: a golfer.
vs A golfer: Tiger Woods.
A golfer: Jon Rahm.
A golfer: Bryson DeChambeau.
This makes it easier to group up information when glancing at the code.It leaves so many questions that will have to be solved through "best practices" and everyone ends up doing it slightly differently.
· That what's best for natural language is also the best for programming languages. This is still a debated topic, but my personal feeling is that the two are different enough in both mechanism and purpose that what's good for one isn't necessarily good for the other. (For an illustrative example, look at how sigils worked in Perl 5, as they were explicitly designed to work like English demonstrative words like "that" or "these", and many programmers when first exposured to Perl feel like they were 'illogical'. They weren't, but in this case, mirroring a natural-language convention tended to obscure, rather than clarify, what was going on in the language!)
· That phrase ordering in English is necessarily 'natural'. Lots of naturally-occurring spoken languages feature word order that differs tremendously from English!
· That the English-language phrase you're describing as 'unnatural' is in fact unnatural: it's actually a common convention, especially when you're introducing a new fact to a conversation! "Tiger Woods, a famous golfer, adopted a cat."