One thing that people never seem to consider when throwing around different back testing options is the ability to move systems into production transparently. R is great for sketching out ideas, but you're never going to do any serious throughput in R, even if you do come up with something you're faced with re-coding the idea in whatever your execution system uses, a highly error prone process. The second thing to consider is the quality of the tool chain, debugging anything non-trivial in R is a PITA, debugging stuff in (for instance) visual studio is a piece of cake. Don't get me wrong, R is great and has it's place, but large scale back testing of production ready systems is not its strong suite.
Stuff that does allow you to move systems into production transparently (Ninjatrader, for instance) is always hopelessly limited.
IMO, you're either looking at C++ or C# (C# kills Java for speed) for the combination of speed and tool chain. Is writing a back tester in C++ hard, yep...but nothing worth doing is ever easy.