同步操作将从 木兰编程语言/mulan-rework 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
此文档旨在让有意参与本项目的新开发者尽快了解开发过程,在此之前请先阅读首页说明对项目有总体认识。
添加任何尚未重现的语法功能都需首先在原始可执行文件下运行测试确认。木兰具体语法细节可参考逆向工程的实现。注意:逆向工程不一定实现了所有语法功能,比如 # 运算
之后再以通过此测试用例为首要目标,可参考本项目之前的类似 commit,如这个 super 语法,添加该语法所必需的最少的 Python 代码。
通过该测试用例后,将它添加到现有测试集中,并运行所有测试确认未影响其他语法和功能。
标识符命名方面,本项目现在尽量使用中文命名。如测试顺利且命名风格一致,在语法说明文档中添加该语法,就可提交 pull request。
木兰源代码通过词法、语法分析,生成 Python 语法树。后通过 compile 编译为 Python 可执行码用 exec 运行。
与逆向工程一样,项目使用了 Rply 这一分析器框架,它有个入门例程。
项目中,入口为 木兰/中.py
,分启动命令行下交互环境与运行木兰源码两部分。
语法分析包含所有语法规则,以及如何生成 Python 语法树节点。最后有两步对语法树的额外处理,分别与类型内方法和匿名函数有关。
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。