木兰编程语言报错信息分类与可用性简析
【项目开源在Gitee:木兰编程语言mulanrework】
去年对木兰编程语言的报错信息作了初步中文化与内容改进,原因见前文《木兰编程语言一岁了!》。积累了几十个用例但一直没有纳入自动测试,本周整理后纳入了Gitee流水线测试,期间重温了各个报错信息性质,小结如下。报错分类
词法分析、语法分析、编译为可执行码(用Python的compile方法)、运行(用Python的exec方法)四个阶段都会报错,逐个举例。词法分析c3
【给出行列号】分词时没认出这个词语法分析a〔1,〕
【给出行列号】没认出这个词〕编译例一:print(2)3
ValueError:expressionwhichcantbeassignedtoinStorecontext例二:return
语法错误:returnoutsidefunction(函数外return。ul,line1)运行时print(12)
报错:字符串只能拼接字符串,请将int先用str()转换见第1行:print(12)可用性分析词法或语法分析的报错信息内容相似,但是否在分词时认不出token恐怕对语言开发者更有用。最终用户应该只在乎为何认不出,以及如何修改。例子中可见,一些报错信息并未指向问题源头。比如a〔1,〕是因为〕之前多了个逗号。这种报错对用户并不友好。与上一条相关,在定位偏差之外,很多时候并未给出修改建议,这应该是用户最关心的。部分报错信息尚未中文化,尤其像某些编译时的报错非常晦涩,还有很大改进空间。之前的分词例子实际还包含了如下大块的回溯信息,这些对最终用户来说无大价值
之后需针对这几项在使用中逐步改进。
区块链物联网人工智能是新经济三驾马车,为什么有人说区块链是中2016年开始接触区块链,谈谈自己对这个问题的看法。且不论区块链、物联网、人工智能是否真的是新经济的三驾马车,单就区块链是中心驱动力这一点而言,我想说这话的人,应该是考虑到了区……
真实iQOO9Pro使用体验,给准备购买者一个参考本人从首发一周后入手的,用了差不多一个月了。现在简单总结一下优劣,给像我一样准备购买的人一点帮助。先说优点:1、屏幕好,通透,对眼睛友好,有2k屏(可以在设置里选择……
linux下codeserver离线远程调试C代码linux下codeserver离线远程调试C代码环境:OS:centos7。9。2009Minimal(无界面版本)cmake:2。8。12编译器:g4。8。5调试器:……
免费阿贝云如题,用阿贝云有一段时间了,中间也有几次忘记延期5m的带宽真的很够用,相比于阿里云的10元学生套餐真的好用很多,1m带宽想要重新配置环境从服务器上下载300m的备份真的难……
单耳耳聋需要配助听器吗?耳朵听力只要下降了就需要佩戴助听器的,因为助听器不只是能帮助你所缺失的听力有所补偿,帮助你在没戴助听器听听不到的声音,好一点的助听器还可以保护残余听力,单耳聋也是需要佩戴助听器……
8128GB12128GB12256GB该选哪种?行内人告诉现在的手机配置越来越丰富,可以满足不同人的需求,不过配置多了后,使得一些人在购买手机的时候无从下手,不知道该选择哪个版本的好,比如目前的手机存储主要包括8128GB、12128……
中概互联网还要跌多久先说结论。我对2022年中概互联网的看法是风险和机会并存,但机会大于风险。四季度业绩预期以及第一季度业绩指引应该不会太好,尽管市场已经提前反映了这样的预期,业绩落地之后依……
支付宝的困境影响力下降转型艰难,市场地位经常被微信威胁前言2003年,马云为了推进淘宝网购的进一步发展,推出了支付宝服务。从此,一个影响中国人至深的国民级软件诞生,并引领了中国移动支付的潮流。作为中国数字经济的开……
中国芯片加快突围文骆振心中国芯片产业起步较早,但是加速发展却是在中美经贸摩擦的国际政治经济格局演变的大背景下,2018年美国禁止向中兴通讯出售电子技术和通讯元件,2019年华为、中芯国际……
中国移动有没有伤透忠实老客户的心?我用移动16年了。是移动的5星金客户,昨天携号转网了,我只能说我转网的太迟了。移动乱扣费,乱收费的手段在我转网前都遇上了。我取消的增值业务他又偷偷的收取费用。被发现投诉后就说对……
618真香机,我推荐几款最高才2999元一年一度的618就要到来,各大手机品牌早已预热了好久,作为想要购买手机的伙伴们,想必也按耐不住自己那颗骚动的心,迫不及待地想要入手自己心仪的手机了吧!作为消费者的我们,购……
鸡肋,鸡助,食之无食,弃之有味嘿Siri我在明天早上七点叫醒我我已将起床设置到上午七点整想到明天就能见到女神了,心情还是有点小小的激动她是我在大学偶遇的女神第一眼见到她我……