ab st语言编程手册_木兰编程语言 0.0.14.7:功能覆盖初版用户手册;Gitee Go 流水线尝鲜...
木蘭編程語(yǔ)言 在 2020 年度 OSC 中國(guó)開源項(xiàng)目評(píng)選 中已獲得 26 票,請(qǐng)投票支持!
年初對(duì)原始木蘭可執(zhí)行文件 ulang-0.2.2.exe 作了些功能上的摸索嘗試,將基本功能寫在初版用戶手冊(cè)。開展重現(xiàn)項(xiàng)目之后,一直沒重走一遍手冊(cè)中的例程。上周終于完成了這個(gè)綜合各部分功能的”小測(cè)驗(yàn)“,大部分例程在上一版本就能正確運(yùn)行,余下的小部分在這個(gè)版本中也通過了。
【安裝:pip install ulang,用法與例程請(qǐng)見 PyPI。源碼位于開源中國(guó)。 注意:必需 python 3.7,源碼文件需 UTF-8 編碼】
此版本重現(xiàn)功能
字符串轉(zhuǎn)義
比較特別的是反斜杠(木蘭交互環(huán)境下效果):
> 'c'+'name' cname在 Python 中反斜杠如果未配對(duì),會(huì)報(bào)語(yǔ)法錯(cuò)誤:
>>> print('')File "<stdin>", line 1print('')^ SyntaxError: EOL while scanning string literal >>> print('')File "<stdin>", line 1print('')^ SyntaxError: EOL while scanning string literal配對(duì)后 Python 的效果:
>>> print('')>>> print('')比照木蘭中反斜杠轉(zhuǎn)義效果:
> println('')> println('')> println('')> println('')> println('')> println('')實(shí)現(xiàn)細(xì)節(jié)可見源碼,個(gè)人感覺初用有些別扭,這種使用場(chǎng)景應(yīng)該不多。
另外引號(hào)與換行轉(zhuǎn)義無(wú)需多言:
> 'doesn't' doesn't > ""吃了么?"" "吃了么?" > '第一行n第二行' 第一行 第二行函數(shù)參數(shù)指定類型
> type Person { >> func $Person(name) { >> $name = name >> } >> } > func hello(p : Person) { >> println("hi " + p.name) >> } > hello(Person("木蘭")) hi 木蘭當(dāng)前路徑下 Python 模塊導(dǎo)入
比如當(dāng)前路徑下有 larger.py:
def larger(a, b):if a > b:print(a)else:print(b)木蘭交互環(huán)境下:
> using larger > larger.larger(5,6) 6內(nèi)置 enumerate 函數(shù)
可以更方便地定義枚舉了:
> for i, v in enumerate(['小', '中', '大']) { println(i, v) } 0 小 1 中 2 大求余運(yùn)算
> 11%3 2其他
Gitee Go 流水線
驚喜發(fā)現(xiàn) Gitee Go 開通后獲贈(zèng)了 1000 分鐘構(gòu)建時(shí)間,而且非常幸運(yùn),構(gòu)建環(huán)境的 Python 版本正好支持本項(xiàng)目需要的 3.7。在新手模板基礎(chǔ)上作了一點(diǎn)修改,較順利地添加了一個(gè)費(fèi)時(shí)少又較關(guān)鍵的 unittest 測(cè)試集(確認(rèn)語(yǔ)法樹生成正確),掛件看起來(lái)不錯(cuò):
觸發(fā)后好像需要一點(diǎn)時(shí)間等待分配構(gòu)建資源,感覺等待挺短,也許是尚未有很多用戶設(shè)置了流水線?期間只發(fā)現(xiàn)了一個(gè)日志中的中文顯示問題,已提交報(bào)告給官方,期待早日解決~
webpy 尚無(wú)法使用
由于 web.py 的例程需要調(diào)用 globals():
web.application(urls, globals())而尚未找到 globals() 在木蘭中的對(duì)應(yīng)方法,因而暫時(shí)無(wú)法使用。希望找到一個(gè)合用、輕量級(jí)的網(wǎng)絡(luò)服務(wù)框架,歡迎建議。
更多報(bào)錯(cuò)信息中文化
> using 不存在沒找到模塊:‘不存在’,見第1行<br/>附:代碼量統(tǒng)計(jì)
主要部分的代碼行數(shù)統(tǒng)計(jì),格式為:上次->現(xiàn)在。
- 木蘭代碼量 2920 -> 2965
- 編輯器,實(shí)現(xiàn)與測(cè)試都是木蘭代碼:432 (在為分為前后端實(shí)現(xiàn)調(diào)研網(wǎng)絡(luò)服務(wù)框架)
- 木蘭測(cè)試用例,包括部分實(shí)用小程序(如井字棋):2488 -> 2533
- Python 代碼量(木蘭實(shí)現(xiàn)與測(cè)試框架):2574 -> 2594
- 分析器/語(yǔ)法分析器.py:1002 -> 1008
- 分析器/詞法分析器.py:201 -> 204
- 測(cè)試/運(yùn)行所有.py,檢驗(yàn)所有木蘭測(cè)試代碼片段:191 -> 192
- 環(huán)境.py,定義全局方法:162 -> 171
- 未變
- 分析器/語(yǔ)法樹.py:202
- 交互.py,交互環(huán)境(REPL):138
- 分析器/語(yǔ)法成分.py,從語(yǔ)法分析器中提取出來(lái)的枚舉常量:81
- 中.py,主程序:74
- 功用/反饋信息.py:65
- 功用/調(diào)試輔助.py,:57
- setup.py, 34
- 分析器/錯(cuò)誤.py:17
- 測(cè)試/unittest/語(yǔ)法樹.py,確保生成的語(yǔ)法樹與原始版本一致:67
- 測(cè)試/unittest/交互.py,交互環(huán)境相關(guān)測(cè)試:28
總結(jié)
以上是生活随笔為你收集整理的ab st语言编程手册_木兰编程语言 0.0.14.7:功能覆盖初版用户手册;Gitee Go 流水线尝鲜...的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 拼多多开年大促来袭:苹果 iPhone
- 下一篇: extjs年月日时分选择控件_UI设计|