Howdy Logo
Glossary Hero image

The Howdy Glossary

Search terms in Glossary

Prose

PROSE (PROgram Synthesis using Examples) is a programming-by-demonstration tool developed by Sumit Gulwani at Microsoft Research in Redmond, Washington. The tool allows developers to generate programs through input-output examples, leveraging techniques such as program synthesis, machine learning, and constraint solving to automatically create solutions that conform to the given examples. PROSE is capable of handling tasks like text extraction, code analysis, and syntax error rectification and is designed for easy integration into existing programming environments. Its incorporation into Microsoft products like Power Query for Excel and Flash Fill in Excel 2013+ highlights its practical utility.

A distinguishing feature of PROSE is its ability to enable developers to create programs through input-output examples seamlessly. By utilizing program synthesis alongside machine learning techniques such as decision trees and neural networks, as well as constraint solving, PROSE can automatically generate programs that align with the provided samples. This approach facilitates tasks such as text extraction and code analysis while recovering from syntax errors. Its successful integration into existing programming languages and IDEs underscores its adaptability and versatility. This seamless integration showcases how it helps users perform complex data transformations without manual coding.

PROSE faces competition from tools like Sketch, FlashMeta, and Bayou; each offers unique approaches in the realm of program synthesis. Sketch synthesizes programs from natural language descriptions while FlashMeta infers user intents from incomplete examples; Bayou specializes in generating code from natural language queries. However, PROSE sets itself apart with its robust programming-by-demonstration approach combined with advanced techniques for automatic program generation based on user-provided examples. These features position PROSE as a powerful tool that enhances productivity by streamlining development workflows without requiring manual coding interventions.

Back
Hire Prose Experts

Enter your email to get started.