下面内容不一定及时更新。最近更新见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 的替代语法

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

  1. devc++源文件未编译_iOS 编译知识小结

    简介 源码到可执行文件流程 编译器 编译流程 预处理(preprocessor) 词法分析(lexical anaysis) 语法分析(semantic analysis) CodeGen 生成汇编代 ...

  2. devc++ value of xxx too large for field of 4 bytes at xxx 并且源文件未编译

    Error: value of 0000000254320bf7 too large for field of 4 bytes at 0000000000000093 同时报错源文件未编译 我的原因是 ...

  3. c语言中源文件未编译是什么,源文件未编译什么意思

    大家好,我是时间财富网智能客服时间君,上述问题将由我为大家进行解答. 源文件未编译,即在运行前要对源代码进行编译链接,然后才能运行.编译利用编译程序从源语言编写的源程序产生目标程序的过程,也是用编译程 ...

  4. Dev C++ 运行出现:源文件未编译

    新安装的Dev C++ 编写一个最简单的hello world 程序 #include <stdio.h> int main() {printf("hello world!\n& ...

  5. 带你反编译APP然后重新打包「MacOS」

    最近有小伙伴留言,怎么把一款APP改成自己的信息呀,咳咳,这又来送题材了,今天水一把APP反编译+回编译,文中会针对一款APP进行简单的修改信息,问问题的小伙伴还不火速右上角支持一下. MacOS跟W ...

  6. 驱动增长是什么意思_什么在驱动「增长」走向火爆?

    2015年的某天,在上海一间地下室里,一群人正聚精会神听着Xdite的分享.届时Xdite还没完成「Growth Hacking這樣做」的书稿,但也已经是海峡对岸颇有名气的GrowthHacker.而 ...

  7. 关于问题“应用程序未安装或安装时出现「INSTALL_FAILED_CONTAINER_ERROR」”的解决方案方面的事情

    我是在eclipse上编写android的应用的. 今天也同样遇到上述问题,并在网上搜索了一下. 大致可能的解决方案以下有讲: [教程] OMS:华为t8300解决应用程序未安装(亲测可行) 网上较多 ...

  8. python 字节流分段_由Python历史「解密」Python底层逻辑

    一次纯粹的hacking Python的作者,Guido von Rossum,荷兰人.1982年,Guido从阿姆斯特丹大学获得了数学和计算机硕士学位.尽管,他算得上是一位数学家,但他更加享受计算机 ...

  9. python底层与机器底层关系_由Python历史「解密」Python底层逻辑

    一次纯粹的hacking Python的作者,Guido von Rossum,荷兰人.1982年,Guido从阿姆斯特丹大学获得了数学和计算机硕士学位.尽管,他算得上是一位数学家,但他更加享受计算机 ...

最新文章

  1. Android Handler sendMessage和 sendMessageDelayed的使用
  2. java网络编程udp_java网络编程 UDP网络编程问题
  3. Redis的安装和部署
  4. python参数默认值实例_Python中使用partial改变方法默认参数实例
  5. DRDoS(memcache漏洞导致的反射型分布式拒绝服务攻击)
  6. oracle 11gogg,【OGG】Oracle GoldenGate 11g (二) GoldenGate 11g 单向同步配置 上
  7. linux逻辑卷创建与管理,CentOS创建LVM linux逻辑卷创建及管理
  8. Angular提示文件不是一个有效的模块
  9. 推荐的C++书籍以及阅读顺序
  10. IDEA 常用设置 与 常用操作(一)
  11. 计算机上安装的游戏怎么删除,win7自带游戏安装包太占内存怎么删除?
  12. 利用Python实现财务分析/经营分析自动化
  13. 物联网全栈教程-从云端到设备(四)
  14. 华为静态路由配置实例
  15. Pandownload 下线了,我花了 30 分钟自己搭建了一个网盘...
  16. 出了雷军周鸿祎,湖北却消失在中国互联网版图
  17. 再聊聊Python中文社区的翻译
  18. Lock作用及其使用
  19. matlab多项式计算题目,MATLAB数据分析与多项式计算-习题答案
  20. 除了迅雷,这几款下载神器也超级好用!

热门文章

  1. python设置路径_Python探索之修改Python搜索路径
  2. C/Cpp / 条件编译
  3. android自定义组件属性,android自定义控件并添加属性的方法以及示例
  4. 大模型应用新范式:统一特征表示优化(UFO)
  5. Kubernetes入门——Kubernetes日志采集与监控告警
  6. 简述人工智能的发展历程图_简述墙体彩绘机发展历程
  7. 华字后面配什么字比较好_涟字女孩取名字含义 带涟好名推荐
  8. 通用测试用例大全(转自——知了.Test)
  9. django 在保存数据前进行数据校验
  10. python 日期格式和字符串格式的转化