机器人语言特性探索1-总体方向

    从这一节开始,逐步把头脑中对于机器人语言的想法及特性整理出来。先形成文案。

    总体上,机器人语言,是一门人类语言,和计算机语言结合的一次尝试,也是量子中文编程的一次探索,其目的,就是走出一条,和目前高级语言完全不同,但又可以吸收一些主流编程语言的特性的新语言。

    这门新语言会覆盖必要的计算机编程及操作功能,但主要是把编程大大简化,抛弃传统编程语言无所不能的特性,取其在实际主流应用,比如Web,手机应用上,可以完成7,8成的工作。不能完成的,和JS等接口,就能达到目的。

    首先,这门语言,和现在所有的主流语言大不同,甚至是相反。

    我们看看主流语言,都是语法,然后再读入或者或变量赋值,然后计算,输出结果。在编程中,程序代码占据了绝大部分。数据呢?没地方放,只能放在数据库里。程序和数据是分离的。

    我们再看看我们的现实人类语言,数据和控制都是一体的,以数据为主,比如这一篇文章,大部分就是数据本身,还有少量的标点符号,分段,换行,排版等控制。这样的东西足于传递信息。

    不过,这样的传统文本或语言模式,是静态的,写出来什么样就什么样,缺乏数据的更新,计算,流动等模式。

    如果通过在数据里增加标记,把计算机语言的特性结合进来,再加上适当的解析器,编译器,那么,一门新语言不就蛋生了吗?这,就是传说中的《机器人语言》

    机器人语言的总体特性如下:

    1。基本按照自然语言的模式,扩展符号的作用,或者说,数据就是自然语言本身,控制及关键字,用符号来标记,符号主要来自键盘上除字母外的各种符号。

    2.机器人语言以数据为主,控制为辅,数据和控制完全结合在一起,写出来很类似传统的书面语言,这一点和传统编程语言完全不同。

    3.机器人语言的关键字,就是符号,主要就是键盘符号,目前把~!@#$%^&*()-=_+[];',./{}:"<>?等这些可以在键盘一键敲出来的,作为关键字控制符。

    4.机器人语言的扩展,以模式扩展为主,不搞关键字扩展这套老路,例如?作为输入,在?后面,就可以做更多的扩展,@为输出,那在@后面,一样可以做更多的扩展。

比如@print, 就输出打印机,@QQ:12345,就输出给QQ号为12345的人。@mail:aaa@163.com, 那就是输出到此Mail上,其实就是发mail。所有的符号关键字,都遵循这样的一种统一模式,那么就可以在有限有符号及规则下,做到无限的扩展。

    5.机器人语言是更高层次的语言,是标记语言加动态语言的结合体,其实这个东西并不陌生,Html+JS就是一次成本的尝试,基本上也不再遍编译成底层代码,机器人语言靠一个运行环境来执行,类似于Html+JS运行在浏览器环境里。

    6.机器人语言遵循现有用户的使用习惯,比如Markdown,Html,Email,微博等,所以机器人语言,会兼容Markdown,来做为表现层,同时其控制,会兼容微博的#字关键及@关键字的用法。

    7.机器人语言拥有最小的学习量,只需要学会一些简单的标记及其表示法,一个不懂编程的人,就可以使用它来完全界面,查询,输入,输出,API调用,计算等主要编程功能。

    8.机器人语言的用途,用在Web及App的简单构建上,通过开发机器人语言解析引擎,这个东西还可以作为高级语言的编程辅助。

    9.机器人语言从宏观上看,是对Html+JS模式的一次巨大化简,把Html表示化简为Markdown表示,完全兼容书面语言写法,实际上越来越多的人正在用Markdown来写作。把JS这种困难的编程模式,简化为标点符号表达模式,把功能调用及实现,都通过解析器来完成,再利用现在越来越流行和庞大的网络API,以及解析器不断进化后提供的越来越多的API,来完成,可见,机器人语言是一门网络化的语言,具有自我完善及生成的可能性。

    比如,#天气预报#晴转多云,PM250@QQ:12345,这就是把主题是天气预报,内容是晴转多云,PM250的信息,提交到QQ号为12345的人那里。

    这种编程模式,用户极其容易掌握,而利用解析器来完成操作,一个普通用户,也能花出很复杂的花样。而传统的编程语言,不得不去实现所有的代码,哪怕获取天气预报,调用QQ发消息接口,已经有现成代码或库,也需要集成进去编译调试。

原文地址:https://www.cnblogs.com/DSharp/p/3498055.html