> meant you could not arrange your code as you saw fit as backreferences didn't work
The actual consequence is that you had to declare things at the beginning of the block. It handled forward declarations just fine. This had minimal impacts on actually "arranging your code."
I never had that be a problem in practice because the interface was separate from implementation. It was exceptionally easy to sort that rare corner case out.