Goto

Collaborating Authors

 learned code idiom


Program Synthesis and Semantic Parsing with Learned Code Idioms

Neural Information Processing Systems

Program synthesis of general-purpose source code from natural language specifications is challenging due to the need to reason about high-level patterns in the target program and low-level implementation details at the same time. In this work, we present Patois, a system that allows a neural program synthesizer to explicitly interleave high-level and low-level reasoning at every generation step. It accomplishes this by automatically mining common code idioms from a given corpus, incorporating them into the underlying language for neural synthesis, and training a tree-based neural synthesizer to use these idioms during code generation. We evaluate Patois on two complex semantic parsing datasets and show that using learned code idioms improves the synthesizer's accuracy.


Reviews: Program Synthesis and Semantic Parsing with Learned Code Idioms

Neural Information Processing Systems

The authors should be commended for writing and submitting a solid paper on semantic parsing and program synthesis that was clearly written, deemed interesting, and contained good and compelling experimental results.


Reviews: Program Synthesis and Semantic Parsing with Learned Code Idioms

Neural Information Processing Systems

Summary: This paper proposes a semantic parsing and program synthesis method. Code generation relies on low-level and high-level abstractions. High-level abstractions can be thought of as functions that are re-used in several programs. In order to model high-level abstraction, the authors propose using a code-idiom mining method from the literature. Once the code idioms are extracted, the program is generated. The generative process has the capability of spitting tokens or idioms.


Program Synthesis and Semantic Parsing with Learned Code Idioms

Neural Information Processing Systems

Program synthesis of general-purpose source code from natural language specifications is challenging due to the need to reason about high-level patterns in the target program and low-level implementation details at the same time. In this work, we present Patois, a system that allows a neural program synthesizer to explicitly interleave high-level and low-level reasoning at every generation step. It accomplishes this by automatically mining common code idioms from a given corpus, incorporating them into the underlying language for neural synthesis, and training a tree-based neural synthesizer to use these idioms during code generation. We evaluate Patois on two complex semantic parsing datasets and show that using learned code idioms improves the synthesizer's accuracy.


Program Synthesis and Semantic Parsing with Learned Code Idioms

Shin, Eui Chul, Allamanis, Miltiadis, Brockschmidt, Marc, Polozov, Alex

Neural Information Processing Systems

Program synthesis of general-purpose source code from natural language specifications is challenging due to the need to reason about high-level patterns in the target program and low-level implementation details at the same time. In this work, we present Patois, a system that allows a neural program synthesizer to explicitly interleave high-level and low-level reasoning at every generation step. It accomplishes this by automatically mining common code idioms from a given corpus, incorporating them into the underlying language for neural synthesis, and training a tree-based neural synthesizer to use these idioms during code generation. We evaluate Patois on two complex semantic parsing datasets and show that using learned code idioms improves the synthesizer's accuracy. Papers published at the Neural Information Processing Systems Conference.