Machine Learning, Program Synthesis, Deep Learning, Npi.
Other models such as Neural Turing Machines are more interesting from this perspective, since they can be trained from input-output pairs, so one doesn’t need to have an already working program. I will talk about Neural Turing Machines, and their more advanced version Neural Differentiable