Right now it works if you wrap a in a Variable:
a = Variable(torch.randn(5))
a[[-1, 0]]

There are plans to merge Variable and Tensor for a more unified API. When that happens, negative values in LongTensors will be supported.