Microsoft Power Fx

Microsoft Power Fx is a free and open source low-code, general-purpose programming language for expressing logic across the Microsoft Power Platform.

It was first announced at Ignite 2021 and the specification was released in March 2021. It is based on spreadsheet-like formulas to make it accessible to large numbers of people. It was also influenced by programming languages and tools like Pascal, Mathematica, and Miranda.

As Microsoft describes the language, it heavily borrows from the spreadsheet paradigm. In a spreadsheet, cells can contain formulas referring to the contents of other cells; if the user changes the content of a cell, the values of all its dependent cells are automatically updated. In a similar fashion, the properties of components in a Power Fx program are connected by formulas (whose syntax is very reminiscent of Excel) and their values are automatically updated if changes occur. For instance, a simple formula may connect a component's color property to the value of a slider component; if the user moves the slider, the color changes.

The initial formula language was created by a Microsoft team led by Vijay Mital, Robin Abraham, Shon Katzenberger and Darryl Rubin as part of the Tangram and Siena projects. Later, as part of Power Apps, Greg Lindhorst and Mike Stall led the effort to enhance the language to what is now become Power Fx. Power Fx is available as Open-source software. The source code was shared under MIT license by Microsoft on November 2. 2021. Only the documentation was originally open source.

In the April 2024 feature update, Microsoft introduced two new Copilot features for Power Fx: Explaining a Formula and Generating Power Fx from Natural Language. These features aim to simplify the use of Power Fx by providing natural language explanations and generating formulas from user input.