![16534f2c7ca08d5bddf2d881f4dfcab9.png](https://i-blog.csdnimg.cn/blog_migrate/ea699d6c60079a13122aaf9ab92e2f4f.png)
为QQ机器人设计中文自然语言风格的编程语言(一)
1.绪论
1.1.设计目的
好玩。
自然语言编程是一个有趣的方向。如果加上中文,那就更有噱头了。
Donald Knuth也说过:好的代码应该是自释义的。
搭载在QQ机器人上意味着跨平台,并且程序员无须配置环境和安装软件,极大程度降低了使用门槛,方便推广和测试。多人同时和QQ机器人交互编程也带来了新的趣味和挑战。
1.2.研究背景
自然语言编程这个方向也有点儿年头了。从1966年[1]提出到现如今2020年,具有自然语言性质的编程语言并不多。这背后的原因我认为主要是两点:
一是不必要:自然语言编程并不是目前的刚需,行业对低水平程序员的需求也始终很饱和。
二是难:自然语言的模糊性和随机性,在分析时具有很大的难度。而编程语言对精确性的要求非常高。
即便如此,以人为本也始终代表着人民群众的需求,尤其是当今社会计算机越来越普及,操作计算机的技术也逐渐成为人们的基本技能。
需求推动技术发展,近年来不少编程语言都逐渐往更“自然”的方向过渡。
C#3.5新增的var特性使得程序员无须过度关注变量的声明;而Python直接就取消了声明类型。
不少传统的命令式语言开始支持函数式和逻辑式这些和人类思维更接近的编程范式。
从人理解计算机到计算机理解人,这是必然的趋势。
2.使用工具
2.1.CoolQ.Native.Framework
Native.Framework是酷Q机器人的SDK之一。通过这个SDK可以使用C#和VB.net来开发QQ机器人。
2.2.Visual Studio 2017 Community
建议使用VS,对机器人断点调试比较方便。
下载 Windows 版和 Mac 版 Visual Studio 2019visualstudio.microsoft.com![06adfe40d3791f918f6eb62ce0fd8959.png](https://i-blog.csdnimg.cn/blog_migrate/3fed400f24ffd9d2832e99a786a110d6.jpeg)
2.3.QQ
还需要解释吗?
3.一些可以参考的对象
3.1.文言 wenyan-lang
前段时间非常火的文言文编程语言。可以编译成 JavaScript,Python,或者 Ruby。图灵完备。有IDE。
这次就写这么点儿内容,下次更新需求分析和语义设计。
参考
- ^此处应有引用文献,但我懒得找了