Gottschlich, Justin ESolar-Lezama, ArmandoTatbul, NesimeCarbin, MichaelRinard, MartinBarzilay, ReginaAmarasinghe, SamanTenenbaum, Joshua BMattson, Timothy2023-05-222023-05-222018-01-012020-12-18https://repository.upenn.edu/handle/20.500.14332/8488In this position paper, we describe our vision of the future of machine programming through a categorical examination of three pillars of research. Those pillars are:(i) intention,(ii) invention, and (iii) adaptation. Intention emphasizes advancements in the human-to-computer and computer-to-machine-learning interfaces. Invention emphasizes the creation or refinement of algorithms or core hardware and software building blocks through machine learning (ML). Adaptation emphasizes advances in the use of ML-based constructs to autonomously evolve software.program synthesismachine programmingsoftware developmentsoftware maintenanceintentioninventionadaptationThe Three Pillars of Machine ProgrammingPresentation