devc++源文件未编译_悬赏万元,重现「木兰」编程语言编译器

下面内容不一定及时更新。最近更新见github源repo:

重金悬赏,重现「木兰」编程语言编译器​github.com

本人特此声明:

任何人,可以借助于任何现有开源技术,包括 Python 编译器本身。只要实现一个解释器或编译器,能够完成 ulang-0.2.2.exe 的功能,与它的编程语言语法和结果一致(1 月 26 日补:项目目标),并且将代码公开开源,以证明实现的原创性,本人将以个人名义奖励一万元。奖金将随时间推移逐渐改变(当前收支见此)。

当然可以组队攻关(只要有明确的贡献,将会提高奖金总额,以便分配),也可以基于之前的逆向工程。

当然也可以与我一同努力(演示版已经发布:吴烜:木兰编程语言,向您拜年!),奖金同上处理。

毕竟,现在有了设计者的思路(鸣谢《刘雷关于“木兰”编程语言的情况说明》)以及之后中科院的专家分析(见处理报告),以及对逆向工程的分析,技术路线已非常明晰(吧?)。

以至于,听说这几乎是计算机本科生就能完成的类似于专业课作业的难度(吗?)。

那么,请各位千万不要让我这个半路出家、业余摸索的外行人占了先!

来吧,让我看看后浪们的实力!

请广为告之!


1 月

  • 25日,搜集相关原始资料,为分析和加工打下基础,也为来者提供资料参考。在此基础上开始复现文档。
    号外!悬赏发布短短数小时之后,就有首位响应者提交了实现代码。让我们一同研究一下。
    开始编写「木兰」语言设计文档。
  • 26 日,祝贺!第一笔款项已支付!
    正式提出项目目标。
  • 27 日,感激!刚收到第一笔赞助!
  • 28 日,已向第一位参与者付酬金累计 ¥954.88。
    创建细分悬赏任务:
    • 建立简易账本系统
    • 对原始可执行文件的功能进行测试
  • 29 日,学习rply用法并通过分析逆向工程获取while和loop的语法并通过测试代码。
    用脚本自动运行循环语法的测试,暂时依赖打印输出。exe启动时间较长,大约2秒一个测试,需改进。将在摸索各语法规则时添加对应测试代码。
  • 30 日,继续分析语法,if/导入模块等等。开始编写用户手册。
  • 31 日,继续基于逆向工程中的 ply 代码,确认语法和功能。编写用户手册第二章——控制走向

2 月

  • 1 日,尝试了基于「木兰」定制新语法,比较简单。
  • 3 日,木兰编程语言知乎专栏创建,收录了之前的文章,欢迎指教。
  • 7 日,编写用户手册第三章——函数和类型,类型部分还有不少没有摸索出来。
  • 14 日, 摸索导入Python 模块功能,有些疑问,需要对 Python 模块导入机制作深入研究。
  • 19 日,初步构建可执行文件, 但测试未完全通过, 待深究.
  • 22 日,编写用户手册第四章——模块。

3 月

  • 5 日,项目首月小结
  • 8 日,编写用户手册第五章——数据结构
  • 18 日,通过修改逆向工程中的bug,生成了exe能够通过所有当前测试用例。
  • 22 日,木兰编译器技术验证——用 cmd 模块实现最简单交互控制台
  • 24 日,木兰编译器技术验证——交互控制台集成 rply 语法分析器
  • 25 日,木兰编译器技术验证——通过 AST 转换和 eval 实现语法定制

4 月

  • 10 日 木兰逆向工程中的 bug(三)——交互控制台,以及下一步
  • 12 日,木兰编译器技术验证——源文件解析与 exec
  • 15 日,暂时不实现 REPL 部分,开始搭建原型加法部分
  • 16 日,延伸调研 RPly 和 PyPy,作了简单性能对比试验
  • 19 日,原型搭建——调用 print
  • 21 日,原型搭建——整数的減、乘、除,其中除较特别
  • 24 日,原型搭建——行号,多行支持

5 月

  • 1 日,为方便调试改进语法树格式化输出
  • 2 日,原型搭建——行列号,语法树比照
  • 四日,原型搭建——赋值语句
  • 11 日,原型搭建——“块”结构({})支持
  • 16 日,原型搭建——条件语句(if...elif...else)
  • 19 日,原型搭建——大小比较、while循环,不允许无效果表达式
  • 23 日 木兰编程语言体验版更新,附带 VS Code 支持插件,通过更多测试。短期内,将基于体验版编写一些例程,过程中改进周边设施,包括对反馈信息进行中文化。此过程中原型项目将以技术验证(包括体验版中的 bug 重现和修复)为主要目的。
  • 30 日 木兰编程语言体验版更新:中文交互环境、调用 Python 库. 原型项目推进到引用本地 python.

6 月

  • 3 日, 原型项目: 开始类型定义部分.
  • 13 日,原型项目搬家到OSChina,并发布阶段小结。下面除了继续完善语言功能,打算向编辑器方向摸索。
  • 19 日,原型进展:支持列表操作,演示编辑器高亮
  • 26 日,儿歌查询实例,引用模块、字符串列表操作

7 月

  • 6 日,范围语法“下限..上限 by 间隔”,重构
  • 10 日,无参数函数、字典基本功能,语法设计的取舍有感
  • 16 日,匿名函数,lambda表达式初步
  • 24 日,完善函数功能,常用字拆分数据处理实例

8 月

  • 7 日,通过玩三岁游戏完善语言功能
  • 8 日,小结了木兰编程语言待重现语法和功能,在此 issue 持续更新。
  • 18 日,引用本地木兰模块;模拟凑十法加法
  • 28 日,支持乘法省略乘号(2长+3宽)等等

9 月

  • 3 日,优先级实现细节阶段小结与问题
  • 7 日,阶段小结,重申悬赏
  • 9 日,整理测试用例,回归测试
  • 11 日,木兰 vs. Python 之语法对用户体验的影响(一)
  • 14 日,交互环境复现,新添新手入门
  • 21 日,150 行木兰代码为木兰自身实现高亮效果
  • 25 日,$ 的妙用,更多编辑器高亮

10 月

  • 1 日,更多 $ 的妙用,self 的拓展语义
  • 6 日,木兰代码格式化之自动调整缩进的 150 倍性能优化
  • 8 日,与 Python 生态的兼容问题;字符串插值
  • 11 日,重温初见木兰的那个战场——二零二零年一月「木兰」编程语言风暴亲历记
  • 14 日,PyPI 发布 ulang 0.0.14.1
  • 17 日,0.0.14.3:井字棋演示,tuple、枚举等
  • 21 日,0.0.14.4:中文报错信息规整,枚举引用新发现
  • 25 日,0.0.14.6:网络服务演示;with...as 的替代语法
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值