Microsoft Program Synthesis using Examples SDK
A framework for automatic programming or data wrangling from input-output examples.
Program Synthesis Framework
Microsoft PROSE SDK is a framework of technologies for programming by examples – automatic generation of programs from input-output examples at runtime.
Given a domain-specific language (DSL) and some input-output examples for the desired program’s behavior, PROSE synthesizes a ranked set of DSL programs that are consistent with the examples.
Data Wrangling DSLs
PROSE SDK includes a pre-defined suite of technologies for various kinds of data wrangling – cleaning and pre-processing raw semi-structure data into a form amenable to analysis:
- Flash Fill, a technology for text transformation by examples, available in Microsoft Excel and PowerShell.
- Data extraction from text files by examples, available in PowerShell and Azure Log Analytics.
- Data extraction and transformation of JSON by examples.
- Predictive file splitting technology, which splits a text file into the structured columns without any examples.
Ensure that either .NET Framework
or Mono is available on your machine.*
* .NET Core support is forthcoming as soon as its
MSBuild tooling support
A step-by-step walkthrough of the process of building a DSL in PROSE and enabling program synthesis for it.
PROSE Playground is an experimental tool for extracting data from semi-structured text files and Web pages.
If you want to apply an existing PROSE DSL, check out its documentation on the left and our samples.