I'm not talking about metaprogramming, exactly. I'm talking about actually building some kind of framework by with you can:
a) specify attributes of, say, a method or library, and have a machine produce code that meets those specifications
b) the machine can ask clarifying questions, such as, "do you need this function to handle UTF-8 input?" and other things that, also need to be taught to the machine
c) eventually, a refactoring pass that causes the machine to refine its programmatic output for human consumption, without changing the functional output
Does anyone know of a library or research that's being done to have software that you can teach to write software?
Honestly, I'd be happy even if someone had a teachable module that had to be taught inch by inch. I'm looking, in a sense, for something to which I can offload my knowledge, to teach it basics, and then have it do tasks for me and others in return.
b. see "Making programming more conversational " [2]
c. see "Integrating Programming by Example and Natural Language Programming" [3]
[1]https://www.youtube.com/watch?v=G_uVE86dJYI
[2http://www.cs.colorado.edu/~ralex/papers/PDF/Conversational-...
[3]http://www.aaai.org/ocs/index.php/AAAI/AAAI13/paper/view/647...