What kind of programming language would you have if you combined the immediate formula calculation and visual representation of a spreadsheet with the data-is-function-is-data semantics of a functional language, with the living semantic code structure notions of intentional programming, with the programming-by-example and declaration of intent provided by test driven development?
Well, I don't know for sure, but I think that once such a programming environment exists, it might look a lot like Subtext: a language/research project being created/conducted by Jonathan Edwards of MIT.
Its worth checking out, even if only to gain a new perspective on this thing we call programming a computer -- and I think there's a good bit more to it than that. The linked presentation-animation is about 30 minutes long and provides a good feel for what subtext is about, at the expense of a few overloaded neurons that burn-out as your brain tries to turn sideways and grok what's going on in front of you.
(I've always been drawn to the elegance of recursion, but analyzing recursive algorithms always makes my brain hurt just a little tiny bit -- having them actually executing while your writing them would take some getting used to).