There are so many things like Fuze for iOS. I've tested a number of them on my kids over the years, and I'd suggest:
Codea is great. Lua, not basic. Great asset management for games.
Pythonista is pretty good. Python, not basic.
Swift Playgrounds is pretty great. Swift, not basic. You can do pretty much anything, including 3D and AR.
Swift in a playground is as immediately accessible as basic.
My 5th grade son has been out of school sick this week, and he wanted to "learn to code" while he was out. Monday he started with scratch on RPi. He quickly hit the wall there; dragging blocks around was tedious and (from my perspective) the event model isn't obvious enough or rich enough to what he wanted (a simple space shooter).
He asked if he could try something where he could type his code. I decided to let him try swift playgrounds. As of this morning he's worked through the chapters on commands, composition, functions, for loops, and conditionals. He's completely baffled by the logic chapter -- he was in tears trying to understand the concept of NOT, and so I asked him to take a break from it. (I don't get it... he understand booleans fine, but the idea of negating the boolean is clearly throwing him.) He skipped ! and did fine with && so shrug. Fifth graders aren't going to get everything.
I have quibbles with the content progression in the Swift Playground lessons but overall it's working as intended. It's pretty buggy though -- sometimes the animated character is clearly on the wrong squares due to an apple bug and that really hurts learning comprehension.
The real carrot for him, though, is that he's learning the language that iOS apps are made in. That's really motivating him.
With his older siblings I helped them learn Codea and while Lua is great for learning, they got hung up on the concept of per-frame update functions, which is not a Lua thing but a Codea thing. I think an OOP model is a better metaphor for learners. They had fun in Codea but none of it stuck with them.
My six year old daughter is also working (slowly) through swift playgrounds. She asked me for help and when I did she berated me for not using camel case. God help me when she learns about tabs versus spaces.
I've taught middle-schoolers coding with scratch and they like it a first but quickly get tired of the interface especially for anything more than 'hello world'. Some even went as far as coding things up in pseudo-code on pencil-paper and then translating to visual/scratch. IMHO the best scratch impls let you switch to python/js without losing fidelity.
I'd argue that Lua is far, far more accessible than Basic. It really depends on the environment in which you stick it, though. Take a look at antirez' LOAD81 for example:
Codea is great. Lua, not basic. Great asset management for games. Pythonista is pretty good. Python, not basic. Swift Playgrounds is pretty great. Swift, not basic. You can do pretty much anything, including 3D and AR.