BASIC does not have the 'oo' factor (object orientated).
While that is true is it a problem in the context of a novice programmer or young person starting off in programming ?
OO is an *abstract* concept and as such for someone "just starting out", particularly a young person, it's best to put as few obstacles in the way to their learning as possible. I'd rather have someone start with a simpler (non-OO) language and progress to a more complex OO one later (when they feel ready for it) than to confront them with OO and have them give up and be put off at the very start.
BBC BASIC was *designed* to assist in good programming practice (yes it does have GOTO and GOSUB - but you can
avoid these by using named procedures and functions, it had long variable names when others restricted you to single letters !) - and has proven itself with generations of school children - in fact I wouldn't be surprised if many people here started with it and then moved onto other languages. For education it just works
If someone is proposing alternatives fine, but every language has it's pros and cons - not having OO in the context of someone just starting off in programming is, in my humble opinion, not particularly a big issue - if the person persists with programming they can always return to it later (anyway it's probably best that ultimately a person gets the chance to use a procedural non-OO language (BBC BASIC is arguably as good as any other), OO Based ones (take your pick...) and possibly even functional ones.
Learning programming is a process
, if someone persists with it that is to the benefit of the person, they will in time learn other languages and will (hopefully) be open minded enough to choose the one(s) that best fulfil whatever programming tasks they undertake.