これ間違ってないだろうけど、やっぱり言語仕様の話しかしてないから何の解決にもなってないと思う。

「やる気」とひとことに言ったってそれが「プログラミングそのものへの」である場合は少なくて、だいたい「ゲームが作りたい」とか「BBSシステムを作りたい」とか「インタラクティブな作品が作りたい」という「やる気」から出発してプログラミングに手をつけはじめるんであって、そういうことがしたいという人たちにとってもっとも「高性能」なのが、ほかならぬBASICやHSPPHPだということでしょう。言語仕様を選んでるわけじゃない。その後プログラムが高度になっていかないのも、したいことが違うんだから無理ない。そういう人が「プログラマー」を自称していいかというと違うとは思うけど。


あと、「ではなぜプログラミング言語は最初から抽象化機能を持って産まれなかったのか?」ということも考えたほうがいいと思う(最初から持ってたよ、という話があったらごめんなさい)。初心者が抽象化が苦手なのはやる気の問題じゃないと思う。