写点什么

微软开源基于 Excel 的低代码语言 Power Fx

  • 2021-03-10
  • 本文字数:1452 字

    阅读完需:约 5 分钟

微软开源基于Excel的低代码语言 Power Fx

近日,微软推出了一款受 Excel 公式启发的低代码语言 PowerFx。


虽然 PowerFx 将成为整个微软自己的低代码 Power Platform 编写逻辑定制软件的标准,但由于该公司将这种语言开源了,微软也希望其他公司能够实现这种语言,并希望它能成为这类用例的事实标准。


因为 Power Platform 本身是面向商业用户而非专业开发者的,所以,依据他们已经掌握的 Excel 知识和熟悉 Excel 公式的程度来上手使用该语言是明智之举。


微软 Power Platform 工程首席副总裁 Charles Lamanna 表示,“我们在编程语言方面有着悠久的历史,在过去的 15 年里,发生了一些非常有趣的事情,那就是,编程语言变成免费了,变成了开源,并由社区驱动”。他指出, C#、TypeScript 或谷歌的 Go 这样的内部语言都是很好的例子。


“这种趋势还在继续。有趣的是,这都是专门给专业开发者和编码者设计的。如果我们回过头来看看低码 / 无码领域,就会发现,实际上都有一些编程语言,比如 Excel 编程语言,或者每一个低代码/无代码平台都有自己的编程语言。但这些语言并不开放,不是可移植的,它们都由社区驱动”,Lamanna 解释道。


微软称,该语言由 Vijay Mital、Robin Abraham、Shon Katzenberger 和 Darryl Rubin 带领团队开发。除了 Excel 之外,该团队还从 Pascal、Mathematica 和 20 世纪 80 年代开发的函数式编程语言 Miranda 等工具和语言中获得了灵感。


微软计划将 Power Fx 应用到所有的低代码平台上,但是鉴于其对社区的重视,它将很快开始出现在 Power Automate、Power Virtual Agents 及其他平台上。



但是这个团队显然希望其他人也能采用它。低代码开发人员将会看到它在 Power Apps Studio 这样的产品的编辑栏中弹出,更老练的用户还可以使用它进入 Visual Studio Code,并用它来构建更复杂的应用程序。


正如团队所指出的那样,它不仅仅关注如何让语言变得像 Excel,还关注如何让它表现得像 Excel 一样运行,或者说像 REPL,对于那些高代码程序员来说,这意味着公式是声明式的,当开发人员更新代码时可以立即重新计算。


译注:REPL,Read-Eval-Print Loop 的缩写,“读取﹣求值﹣输出循环”,是一个简单的、交互式的编程环境。现指交互式解释器。


如今,大多数低代码 / 无代码工具都提供了一个“逃生通道”,允许用户使用更复杂的代码来扩展他们的应用程序,或者使用工具导出整个代码库。因为最终不管怎么样,你都只能使用这些工具来达到目的。默认情况下,它们被构建来支持各种场景,但是由于每个公司都有自己的做事方式,因此无法涵盖所有用例。


“我们认为,也许大多数开发者——我所说的‘开发者’指的是使用 Power Platform 的商业用户—最终会以某种形式开始编写这些公式。我们的想法就是,在你开始使用 Power Platform 的第一天,我们不会写任何公式。它是一个宏记录器,是模板。对于 Power Apps 来说也是如此,它是完全可视化的,具有拖放功能,并且不需要编写任何公式。但是 Power Platform 的厉害之处在于,在使用了几天之后,当你使用它时,你会学到更多复杂的东西。你将开始使用更多高级功能。而在你意识到这一点之前,你实际上已经拥有了 Power Platform 或者低代码开发人员这样的专业人士,因为他们能够在这种能力范围内发挥作用。”


作者介绍:


Frederic Lardinois,TechCrunch 科技记者。曾创办 SiliconFilter,并为 ReadWriteWeb(现称 ReadWrite)撰稿,文章涉及企业、云计算、开发者工具、谷歌、微软等等。


原文链接:


https://techcrunch.com/2021/03/02/microsoft-launches-power-fx-a-new-open-source-low-code-language-for-its-power-platform

2021-03-10 15:013926
用户头像
刘燕 InfoQ高级技术编辑

发布了 1112 篇内容, 共 528.3 次阅读, 收获喜欢 1975 次。

关注

评论

发布
暂无评论
发现更多内容

探索C语言程序奥秘——C语言程序编译与预处理

未见花闻

6月月更

L2 元年,Arbitrum Nitro 升级带来更兼容高效的开发体验

TinTinLand

区块链+ 科技

Java基础:异常处理机制

百思不得小赵

异常 javase 6月月更

java定义属性错误_错误处理

工程师日月

6月月更

非凸联合创始人李佐凡:将量化作为自己的终身事业

非凸科技

人工智能 机器学习 rust 量化交易 算法交易

疫情防控,居家办公,网上授课之心得 | 社区征文

sky

初夏征文

一文搞懂php中的(DI)依赖注入

乌龟哥哥

6月月更

波卡生态发展不设限的奥义——多维解读平行链

One Block Community

区块链 科技

netty系列之:在netty中使用tls协议请求DNS服务器

程序那些事

Java Netty 程序那些事 6月月更

Java Core 「17」ThreadLocal

Samson

学习笔记 Java core 6月月更

ERROR日志格式与注意点

zarmnosaj

6月月更

给你讲懂 MVCC 续篇

Nick

MySQL 源码 MVCC 6月月更 深入解析

面向对象开发

Jason199

面向对象 js 6月月更

论一个优秀红队人员的自我修养

穿过生命散发芬芳

6月月更 攻防演练 自我修养

如何抓手机的包进行分析,Fiddler神器或许能帮到您!

wljslmz

抓包 fiddler 6月月更

Android 硬布局item的高级写法

yechaoa

android layout 6月月更

自动化测试

IT蜗壳-Tango

6月月更

被疫情偷走的时间都去哪了 | 社区征文

宇宙之一粟

时间管理 居家办公 6月月更 初夏征文

Smartctl 打开设备遇到 Permission denied 问题排查过程记录

耳东@Erdong

Linux smart 6月月更 Permission denied

The Merge 过后,没有以太坊 2.0,只有共识层

TinTinLand

区块链 科技

Redis 那些事

Damon

6月月更

TSDB在民机行业中的应用

CnosDB

IoT 时序数据库 开源社区 CnosDB infra

jwt

卢卡多多

JWT 6月月更

实战攻防演练中的四大特点

穿过生命散发芬芳

6月月更 攻防演练

由点到面贯穿整个Java泛型理解

知识浅谈

Java泛型

“阿里健康”们的逻辑早就变了

科技新知

你真的需要自动化测试吗?

老张

软件测试 自动化测试

GitHub 高赞的 Flutter 状态管理插件BLoC 简介

岛上码农

flutter ios 安卓开发 跨平台开发 6月月更

谈谈飞书对开发工作的优势 | 社区征文

武师叔

初夏征文

MCN机构遍地开花:博主和作者要谨慎签约、行业水很深

石头IT视角

Sumati GameFi生态纵览,神奇世界中的元素设计

鳄鱼视界

微软开源基于Excel的低代码语言 Power Fx_AI&大模型_Frederic Lardinois_InfoQ精选文章