Discovering the syntax and strategies of natural language programming with generative language models
In this paper, we present a natural language code synthesis tool, GenLine, backed by 1) a
large generative language model and 2) a set of task-specific prompts that create or change …
large generative language model and 2) a set of task-specific prompts that create or change …
Repairing bugs in python assignments using large language models
Students often make mistakes on their introductory programming assignments as part of
their learning process. Unfortunately, providing custom repairs for these mistakes can …
their learning process. Unfortunately, providing custom repairs for these mistakes can …
Flashfill++: Scaling programming by example by cutting to the chase
Programming-by-Examples (PBE) involves synthesizing an" intended program" from a small
set of user-provided input-output examples. A key PBE strategy has been to restrict the …
set of user-provided input-output examples. A key PBE strategy has been to restrict the …
Constitutionmaker: Interactively critiquing large language models by converting feedback into principles
Large language model (LLM) prompting is a promising new approach for users to create
and customize their own chatbots. However, current methods for steering a chatbot's …
and customize their own chatbots. However, current methods for steering a chatbot's …
Scattershot: Interactive in-context example curation for text transformation
The in-context learning capabilities of LLMs like GPT-3 allow annotators to customize an
LLM to their specific tasks with a small number of examples. However, users tend to include …
LLM to their specific tasks with a small number of examples. However, users tend to include …
Data extraction via semantic regular expression synthesis
Many data extraction tasks of practical relevance require not only syntactic pattern matching
but also semantic reasoning about the content of the underlying text. While regular …
but also semantic reasoning about the content of the underlying text. While regular …
Using pre-trained language models to resolve textual and semantic merge conflicts (experience paper)
Program merging is standard practice when developers integrate their individual changes to
a common code base. When the merge algorithm fails, this is called a merge conflict. The …
a common code base. When the merge algorithm fails, this is called a merge conflict. The …
Two birds with one stone: Boosting code generation and code search via a generative adversarial network
Automatically transforming developers' natural language descriptions into source code has
been a longstanding goal in software engineering research. Two types of approaches have …
been a longstanding goal in software engineering research. Two types of approaches have …
Neurosymbolic repair for low-code formula languages
Most users of low-code platforms, such as Excel and PowerApps, write programs in domain-
specific formula languages to carry out nontrivial tasks. Often users can write most of the …
specific formula languages to carry out nontrivial tasks. Often users can write most of the …
Pydex: Repairing bugs in introductory python assignments using llms
Students often make mistakes in their introductory programming assignments as part of their
learning process. Unfortunately, providing custom repairs for these mistakes can require a …
learning process. Unfortunately, providing custom repairs for these mistakes can require a …