欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

阿里味 "PUA 编程语言在 GitHub 热榜上获得 2.7K颗星!

最编程 2024-03-06 12:53:05
...

点击上方“码农突围”,马上关注

 
 

这里是码农充电第一站,回复“666”,获取一份专属大礼包

真爱,请设置“星标”或点个“在看

从程序员code到产品经理PPT的生态闭环,终于打通了。如果编程语言里都是“赋能”、“反哺”、“抓手”,会是啥样?

我们不妨先来写个程序看看:

6f4a904191f46a356fa501eca9411ba0.png

怎么样,你看懂了吗?

这段程序可不是乱写的,定义函数、条件判断一气呵成,训练有素,还真的能跑通:

7d71114a79aa0174c7315699ab573c59.png

相信有高手已经看懂了,以上是一段求斐波那契数列的递归程序,只不过加入世界上最好的编程语言——PPT的一些语法而已。

如果非要把上面的程序翻译成“人话”,那就是:

e7640a5d5c2302fdac6ba15c43d94b3e.png

是不是一下子豁然开朗?

好好的程序,为什么要用“非人话”来写呢?

其实,这是一位国内程序员开发的互联网黑话编程语言,英文名叫PUA Language

这个语言成功将两大部门员工对齐:非技术部门能快速掌握编程要领,程序员也能获得每天PPT汇报的快感。

看到这么有趣的编程方式,程序员表示自己的工作都高大上起来了,毕竟自己每天都要赋能几十个对象。

faef00e7bd58a6415f86abc61a7f1c00.png

那么,PUA Lang该怎么写程序?

编程“打法”

一般编程语言需要的基本功能,PUA Lang一应俱全。

整个语法的表达堪称“信达雅”:if对应细分,while对应闭环,let对应赋能,fn对应抓手,数组是组合拳……

Monkey

pua-lang

Explanation

if

细分

"specialization"

else

路径

"pathway"

while

闭环

"closed loop"

true

三七五

"3.75", a passing performance evalulation result

false

三二五

"3.25", a failing performance evalulation result

let

赋能

"enable", in a fancy way

fn

抓手

"handle", as in getting a handle on things

return

反哺

"repay", used in Alibaba as a general term for feedback in systems

Array

组合拳

"combo move"; not yet a word in the language

Hash

载体

"carrier"; not yet a word in the language

=

对齐

"align"

+

联动

"linkage"

-

差异

"difference"

/

倾斜

"tilt"

puts

输出

"output"

quit

淘汰

"eliminate"

35岁老员工看到这里,恐怕已经瑟瑟发抖了:“三七五”是true,“三二五”是false,那种被KPI支配的恐惧,一股互联网大厂内卷的气息顿时扑鼻而来。

难怪英文名叫PUA Lang啊。

看完整个语法后,我觉得:

这位程序员已经成功以GitHub为中台,以开源为打法,迅速打出一套组合拳,成功挖掘了公关作为新增用户,形成了一套全新的方法论,为编程产业赋能

落地一下

大厂的业务布局,讲究一个风口,什么是风口呢?

87d3ef3d77446f98c07312b7cec698b1.png

用图来解释就是:

d722c7326e5b82a541bac6f0538aff07.png

有了投资才刚刚开始,毕竟不能落地的项目是得不到资源倾斜,,于是就有:

76b3899784d1391486730b589df8aab9.png

这里面概念有点多,我们慢慢来解释,首先是高空落地

ad05fea2f379a990dcf97c19906a50d7.png

打磨要是说白了也容易理解:

6840ba51b0ff77a71bd630209f1a03a4.png

好不容易到了快下班的点,领导却发来最新指示:要进行产品升级。

升级这个抓手系统里还没有啊,赶紧拜托对面工位的P7帮忙实现一个。

到了晚上9点,终于写出来了:

f8ed2cf79d9f648e4cf0d9cc50e82de7.png

看不懂,先运行一下试试吧:

54eae40e856a4635555fdf51af2e4524.png

原来这个升级,就是价格翻倍的意思,早说啊。f630c864e285e9a96e0bc72bbea7d4a7.png

这是什么鬼

PUA Language这个项目,其实是基于另一个Rust实现的Monkey语言项目rs-monkey-lang修改而来。

Monkey语言是《Writing An Interpreter In Go》一书中介绍的,专门用来学习解释器工作原理的语言。

283571ed6fb44200116c7f8e395060f6.png

各位在恶搞互联网黑话的同时,不妨看一下它的源码,还可以顺便学习一下解释器。

PUA Language目前还在开发初期阶段,只有一些基本功能,但已经获得了1.7k标星,网友也纷纷热情地在Issue里开起了脑洞。

084754c1c1993b663ec609a90955601d.png

作为Bug编写员,异常处理一定要有:

038ebe95fa8b4eff0ca5b762edf0868a.png

还有一位不愿意透露姓名的网友提出了更多高级功能:

9f1fe8039a2ebb240ca810fbdf616da7.png

除了功能以外,整体风格也要一致才行:

e6adebf5ad20283a0847a98fd0245ee0.png

开源协议也要改一下:

0c5730cfce9f7c171b56937acd9e2c3c.png

最后,考考大家的黑话水平,请看这段代码,能猜出聚焦这个抓手解决了什么痛点吗?

6a7f2c0a56f35e896826038402156e42.png

项目地址:
https://github.com/flaneur2020/pua-lang

在线解释器:
https://flaneur2020.github.io/pua-lang/

 
 
 
 

转自:量子位 | QbitAI

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
-End-
最近有一些小伙伴,让我帮忙找一些 面试题 资料,于是我翻遍了收藏的 5T 资料后,汇总整理出来,可以说是程序员面试必备!所有资料都整理到网盘了,欢迎下载!

点击????卡片,关注后回复【面试题】即可获取