Paradigm | Low-code, general-purpose, imperative, strongly typed, declarative, functional |
---|---|
Designed by | Vijay Mital, Robin Abraham, Shon Katzenberger, Darryl Rubin, Greg Lindhorst, Mike Stall |
Developer | Microsoft |
First appeared | 2021; 4 years ago (2021) |
Typing discipline | strong |
License | MIT License |
Website | docs |
Influenced by | |
Excel functions, Excel macros, Pascal, Mathematica, Miranda |
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.
See also
- Visual Basic for Applications
- List of low-code development platforms
- List of programming languages
- Timeline of programming languages
References
- Anderson, Tim (2021-03-02). "Excel-lent: Microsoft debuts low-code Power Fx language... but it is not really new". The Register. Retrieved 2021-03-14.
- Melanson, Mike (2021-03-06). "This Week in Programming: Microsoft's Power Fx 'Low Code' Language". The New Stack. Retrieved 2021-03-14.
- Moorhead, Patrick. "Microsoft Build And Power Platform - Navigating Change, And The Role Power Technology Can Play". Forbes. Retrieved 2023-02-25.
- Jawad, Hamza (2021-03-02). "Microsoft confirms the launch of Power Fx, its new low-code language". Neowin. Retrieved 2021-03-14.
- Vizard, Mike (2021-03-08). "Microsoft Open Sources Low-Code Power Fx Language". developer.com. Retrieved 2021-03-14.
- Wyciślik-Wilson, Sofia (2021-03-03). "Microsoft Power Fx is an open source, low-code programming language". BetaNews. Retrieved 2021-03-14.
- ^ Lardinois, Frederic (2021-03-02). "Microsoft launches Power Fx, a new open source low-code language". TechCrunch. Retrieved 2021-03-14.
- ^ "Microsoft Power Fx overview - Power Platform". docs.microsoft.com. 2021-02-26. Retrieved 2021-05-10.
- "GitHub - Microsoft/Power-Fx: Power Fx low-code programming language". GitHub.
- "Greg Lindhorst: Power Fx: Open source now available". 2021-11-02.
- "Microsoft Power Fx overview - Power Platform". learn.microsoft.com.
- "What's new: Power Apps April 2024 Feature Update". Microsoft Power Platform Blog. 2024-05-01. Retrieved 2024-07-09.
External links
- Microsoft Power Fx overview
- Power-Fx on GitHub
- Introducing Microsoft Power Fx: the low-code programming language for everyone
- What is Microsoft Power Fx?
Microsoft development tools | |||||||
---|---|---|---|---|---|---|---|
Development environments |
| ||||||
Languages | |||||||
APIs and frameworks |
| ||||||
Database |
| ||||||
Source control | |||||||
Testing and debugging | |||||||
Delivery | |||||||
Category |