"simplicity, immediacy, and interactivity": yes, absolutely. I used to learn with VB code, many years ago. Dragging a button onto the form, double-clicking it, and entering<p><pre><code>  MsgBox "Hello!"
  Command1.Caption = "Hello!!!"
</code></pre>
And then clicking Go, and trying it out right there -- that's real programming, it's got the properties you asked for, and it's much more discoverable than a command-line shell.