木兰编程语言重现——儿歌查询实例,引用模块、字符串列表操作

吴烜2020
 吴烜2020
发布于 2020年06月26日
收藏 4

实现了最基本的对木兰模块的引用功能,正好想做一个儿歌查询,方便找适合小孩唱的歌,就用这个实例进行功能验证。过程中发现缺了一些字符串和列表的基本功能,于是按需添加。

功能

这是儿歌数据模块的木兰源码:

下面的搜索部分引用了数据模块(开头using):

其中的 map、filter、list 功能与 Python3 相同。不支持用in判断是否为子字符串,于是用find代替。

代码统计

下面是几个主要部分的代码行数统计,+/-的为相对上周的增量。

  • 测试
    • 木兰测试用例:601 + 299 = 900
    • 测试.py,运行测试的脚本:135 + 8 = 143
    • 未变
      • test语法树.py,确保生成的语法树与原始版本一致:63
  • 实现:1633 + 87 = 1720
    • 分析器/语法分析器.py, 为重用分析方法作重构:652 + 24 = 676
    • 演示高亮.py:80 + 18 = 98
    • 环境.py,加载木兰模块:33 + 54 = 87
    • 中.py,主程序:56 - 21 = 35
      • 分析器/语法树.py功用/调试辅助.py,包括对 ast 库的中文封装:251
      • 词法分析器.py,主要是词法规则:123

下一步

编辑器方面,仅加了些界面元素,功能设想中。

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 开源中国社区 [http://www.oschina.net]
本文标题:木兰编程语言重现——儿歌查询实例,引用模块、字符串列表操作
加载中

精彩评论

Anjelo
Anjelo
我想知道这门语言的意义是什么,如果单纯为了中文而中文,没什么需要我们关注的意义,我不信从幼儿园就开始的英语学习的人记不住几十个关键字,如果说是小孩用,那么积木类语言更直观,直接拖拉就行。龙书虎书在案头,为了生活的苟且,没有时间看,要不然我也搞一门语言出来。
風雲劍客
風雲劍客
要改就把关键字也改为中文,省得中英文来回切换
ChungZH
ChungZH
我想知道,木兰编程语言就是把变量名函数名改成中文吗?
Keijack
Keijack
如果只是想用这种半中文半英文来编程,Java、Python 3 等现代语言都能支持。我觉得这个语言还不如之前那个文言文编码来得有趣呢。
李英辉
李英辉
osc就不要发这种没意义的新闻了

最新评论(57

looyc_com
looyc_com
就是个笑话!
吴烜2020
吴烜2020
?我全篇说中文命名了么?就盯着这个是你们少见多怪还是选择性无视其他内容?
就不和你比问号多了
帝在人为
还好意思问所以呢???????
吴烜2020
吴烜2020
? 所以呢?
windrise67
windrise67
任何支持utf8的语言都支持,这就是中文命名,跟语言有啥关系
d
dwcz
回复 @Anjelo : 这就没意思了。论理就论理,中国人原来落后,偏向学,但现在跟上就应该偏向造了。
Anjelo
Anjelo
回复 @dwcz : 看了一遍你的空间后,发现我不应该用我肤浅的经验跟你这个经验丰富的人辩论。阿库娅神在上,我认输。愿阿库娅的荣光永远照耀着你。
d
dwcz
回复 @Anjelo : 哎。既然是码农,就别鼓吹“不用从源码学,有教程或书籍”了。那是你“用”的经验,但并不代表正确的“造”的经验。
Anjelo
Anjelo
回复 @dwcz : 可能你的环境很优越,不知道有个名词叫码农,就算多大的雄心壮志最终还是要回到柴米油盐。如果你没经历过生活的艰辛的话,在这里大放厥词,我可以当你小孩无知,趁早调整好心态面对社会,或者继续待在你的象牙塔里,否则富士康的信仰之跃有你一份。
d
dwcz
回复 @Anjelo : 只能说无语了。干了这么多年这么多事,工具只等别人造。你是当老板的人啊,干嘛学知识,只要有钱请人干嘛。
返回顶部
顶部