中科院宣布自主研发国产编程语言“木兰”,遭网友举证是Python!瞬间惨遭打脸!
点击上方“程序员前线”,选择“星标”
回复“资料”,获取小编整理的一份资料
2020年1月15日,中国科学院计算技术研究所(以下简称中科院计算所)计算机体系结构国家重点实验室,由该实验室编译组主导研发的国产编程语言“木兰(Mulan)”正式发布。
据中科院计算所副研究员、计算机体系结构国家重点实验室编译组负责人刘雷介绍,“木兰”是一款定位于面向智能物联应用、采用最新编程语言设计理念和编译技术的程序设计语言,开发团队致力于将其打造为“智能物联时代的C语言”。
随着人机交互频次的日益增长,编程正成为这个时代“第三重要的基础学科”。编程语言也和操作系统一样,是信息技术领域重要的系统软件。并且,信息技术行业的生态环境也往往是从编程语言开始建立的。“如谷歌公司在云计算领域推出的Go语言、苹果公司自行设计的Swift语言、Oracle控制的Java语言标准等等。”刘雷说,一旦某个编程语言在一个领域建立了自己的生态系统,那么它的地位几乎很难撼动。
“‘木兰’是由编译实验室完全自主设计、开发和实现的编程语言,与之配套的编译器与集成开发工具也完全由团队自主实现,是我们真正掌握核心技术的编程语言。
此消息一经发出,引发不少开发者质疑。对于完全自主设计的“国产编程语言”,大家的期待都非常大,网友@沉迷单车的追风少年 就在第一时间前往官网下载。
下载完成后却发现图标有点不太对劲。纳尼?和python几乎一毛一样
这不明显是pyinstall打包的吗?该网友吐槽到:我发布pyqt的软件都知道换个图标,这么大的项目连图标都不换?
打开之后就是类似python一样的对话框
提供了这么多函数,和python几乎一毛一样啊
试一下反向破译一下,以为会加密,毕竟是一个商用软件,我们自己写pyqt有时候都加密
但是,结果一点加密都没有,直接破解了:
就是python写的啊。
同样在在知乎上也有很多开发者对此进行讨论。
很多开发者发现解包后的木兰语言其实就是建立在 Python 之上,将 Python 构建的环境、包和项目都编译成一个可执行文件。所以似乎木兰只是在顶层做了一个接口,将底层编译、优化等众多工作都交给了原版 Python?
如下所示为 EXE 文件的解包结果(采用 PyInstaller Extractor):
从解包结果可知,「木兰」语言是通过 Pyinstaller 将 Python 文件打包成 EXE 可执行文件。
根目录下有个driver,添加pyc文件头即可用uncompyle6来反编译:
只有两行,调用了runtime.main里的main函数。
这个文件被放在了pyz_extracted里
main里本身实现了不少东西
但你这个执行是不是有点……?
直接调exec,唯一的区别就是加了一个globals。
命令行版本里的repl里是做了一些处理的……虽然也没发现有什么改进的特性。
关于关键词看到不少同学都是试出来的func2333,这里有一个list:
不忍看下去了。。。
所以它到底跟python有多大区别嘞(⊙o⊙)?
还有说好的面向智能物联应用呢?这通篇也没瞅着哪里跟智能物联有半毛钱关系啊,你好歹封个蓝牙或者zigbee的模块进去嘛233
网友@龙文,直接表示就是Python3.7.4换了皮肤。
作为对比,截了几张图,上面是木兰,下面是Python3.7.2。
以sys库为例
木兰导入包的方式为:
sys = __import__('sys')
Python导入包的方式为:
sys = import sys
报错信息木兰:
版本信息格式也是一样,从左边可以看出木兰是基于Python3.7.4换皮肤的:
当然,你可以死皮赖脸地说是参考了Python。
但是。。。。重点来了,copyright居然有Python字样,哈哈哈哈,这太尴尬了,这下没法抵赖了吧:
Python的如下:
还有一个sys.prefix属性引起了我的注意,我倒要看看这个C:\Users\huawei\AppData\Local\Temp\_MEI143282路径下有什么东西,
打开一看尼玛我傻眼了都,全是Python的文件,结果不言而喻:
其实之前我们比较熟悉的文言编程语言,它就非常明确只关注语法和前端,把所有底层操作都留给了 Java 或 Python。双兔傍地走,安能辨我是Python。
一位开发者从以下三个角度评价了木兰语言:
把 Python 环境打包到一个可运行的文件,那么这可能是没问题的。但将其号称为拥有自主产权的编程语言就太言过其实了。对此,你怎么看呢?
参考信息:中国科学院,中国科学报,知乎,CSDN
最新评论
推荐文章
作者最新文章
你可能感兴趣的文章
Copyright Disclaimer: The copyright of contents (including texts, images, videos and audios) posted above belong to the User who shared or the third-party website which the User shared from. If you found your copyright have been infringed, please send a DMCA takedown notice to [email protected]. For more detail of the source, please click on the button "Read Original Post" below. For other communications, please send to [email protected].
版权声明:以上内容为用户推荐收藏至CareerEngine平台,其内容(含文字、图片、视频、音频等)及知识版权均属用户或用户转发自的第三方网站,如涉嫌侵权,请通知[email protected]进行信息删除。如需查看信息来源,请点击“查看原文”。如需洽谈其它事宜,请联系[email protected]。
版权声明:以上内容为用户推荐收藏至CareerEngine平台,其内容(含文字、图片、视频、音频等)及知识版权均属用户或用户转发自的第三方网站,如涉嫌侵权,请通知[email protected]进行信息删除。如需查看信息来源,请点击“查看原文”。如需洽谈其它事宜,请联系[email protected]。