Can Humans Teach Machines to Code?
Abstract
The goal of inductive program synthesis is for a machine to automatically generate a program from user-supplied examples. A key underlying assumption is that humans can provide sufficient examples to teach a concept to a machine. To evaluate the validity of this assumption, we conduct a study where human participants provide examples for six programming concepts, such as finding the maximum element of a list. We evaluate the generalisation performance of five program synthesis systems trained on input-output examples (i) from non-expert humans, (ii) from a human expert, and (iii) randomly sampled. Our results suggest that non-experts typically do not provide sufficient examples for a program synthesis system to learn an accurate program.
Fields of Study & Subjects
Teaching and Learning Programming
Evolutionary Algorithms and Applications
Logic
programming
and type systems
Publication details
- Journal / source
- Underline Science Inc.
- Publication date
- 7 January 2026
- Language
- EN