My level of language skills is in perpetual descent. :) But I'm down with the context. As long as things are well documented I don't mind context sensitivity a bit and it can make hacking easier when applying the same underlying code in different places. E.g.: I find I would rather DBIC return an iterator for use in TT2 and a collection of objects in most CLI stuff so I like the fact that DBIx::Class::ResultSet->search does both. And yes I know about search_rs but it wasn't around in the early days and I like the idiom without just fine.
Update: I see that my use case in agreement with dragonchild above. Surprise, surprise! ...there is really only one good use of wantarray - to return an array or an iterator.