Thank you for your response,
I have used the switch case structure with sub-programs like in your example before with over 100 cases and it worked well for what I needed. However, if I wanted to ‘jump’ within one of those sub-programs I would still have to use a loop and if statement and these structures could get quite complex.
Agreed jump nodes could cause unexpected behaviour but this just needs to be tested.