Economics are outside my field but your questions are interesting so I'll have a go.
A few Points:
I fear any explanation of economic processes reduces the problem to near idiocy but it is interesting none-the-less. Thanks for your intersting questions.
I'm glad you mentioned prototyping because I think that is a real benefit of an easy programming language. If a user feels confident enough to try and program their own solution it forces them to really think about what they need and want. As a developer of business applications, I can tell you that a user who knows their required features and how those features might necessarily work is extremely valuable. Which is great so long as they're not tied to the original product they developed. That being said, we've been trying to bring software developing to the average user for a long time now.
If it happens once, it's a bug. If it happens twice, it's a feature. If it happens more than twice, it's a design philosophy.