Also you could swap out hot spots with assembly trivially as it had an inline assembler. And you had indirect pointers in it!
Because BBC Basic had a built-in assembler it was pretty uncommon for BBC programs to inline machine code as raw data (unlike some other computers from BITD).