I think that Android needs it to go a bit further by differentiating between required permissions and optional ones. Having them all optional could cause the app to plain not work (no, Handcent can't send messages) or users would just block apps that request internet access for fetching adverts from doing so.
However, I'd welcome annotations for exactly why an app requires each permission.
However, I'd welcome annotations for exactly why an app requires each permission.