How Deep Learning Machines Program Themselves