I think people here are mixing things up.
It's often said here that the BAEC is geared towards rewarding people who do a lot of flying in premium classes.
Wrong. The reality is that BAEC, as a loyalty programme, is pretty stingy. The only positive bits to it are lounge access for silvers and the MFUs.
Other FFPs (and not just the US ones) offer 100% alliance-wide mileage bonuses for elite flyers, 200/300% of distance flown for flying in business/first, some (or more than some!) free upgrades, more destination bonuses/redemption offers, and that's on top of giving you more recognition for flying often in economy class.
Now, for a LON-based flyer, BA obviously make a lot of sense since they have a pretty solid onboard product and a fair few nonstop destinations. But, for these people, choosing BA makes sense despite of the FFP, not because of it! And, because LON is a massive market and BA has a lot of corporate contracts, getting away with it is not a problem for BA, either.