Markdown是一种新型的书写型标记语言,是对Html的一次巨大的进步,虽然现在还不太看得出来,但这种趋势进一步发展,以后的语言学或教材,可能就需要做一些修订了。
由此可见,中国式教育有多落后,跟不上时代那是命中注定。
刚才的一个新闻,进一步的揭示了这种趋势,我们看下原文:
以下是原文引用:
北京地铁五道口站1名乘客跳下站台 列车紧急停车
2014-01-02 22:08:24 来源: 人民日报(北京) 有11人参与
分享到
人民日报
【突发:北京地铁13号线一名乘客跳下站台致紧急停车】据@北京地铁 发布#突发运营信息#:21:35,地铁13号线五道口站下行有一名乘客跳下站台,列车采取紧急停车措施,21:38,采取接触轨停电处理措施。北京要坐地铁的小伙伴们注意!
续报:目前地铁13号线西直门至龙泽区段暂时无车,有急事的乘客请您改乘其他交通工具。
续报:目前地铁13号线维持回龙观至东直门区段运营。
续报:22:10地铁13号线五道口站跳下站台的乘客已被工作人员抬上站台,22:13接触轨送电完毕,13号线西直门至龙泽区段恢复运行。
这个新闻很有意思,是网易可能是从微博上转过来的,想第一时间发布,小编没有重新排版。可以看到里面带了一些格式标记。
这就是一篇原生的标式化语言文档,但是浏览器并不能正确的解析,原因很简单,现在的系统缺乏一个“机器人语言解析器”,当然了这只是用来做例子。
这篇新闻已经相当格式化了,比如来源:人民日报(北京),如果使用机器语言所描述的那种格式化编程,那么这个字段定义可以被解析,这就是一个“输入”,分享到:人民日报,这就是一个“输出”,【突发:北京地铁13号线一名乘客跳下站台致紧急停车】标题及主题,冒号是一个标记分隔。
据@北京地铁 发布#突发运营信息#:21:35
这一句包含了@标记,#标记,时间标记,都是可以标准化解析的。
续报:
这就是一个跟随关联标记。
从上面一个标准的文档来分析,我们可以看出,机器人语言要搞的事情,就是把自然语言当数据内容,按标记进化格式化输入,输出,利用Markdown的模式对数据本身进行可视化描述。
这样的一种语言,可以通过一个解析器运行环境中在间运行。
用一种最简化的方式来表达下就是:
?定义输入,@定义输出,#定义关键字,:字义键值对(也就是属性),Markdown定义显示,自然语定定义数据内容。
和普通编程语言刚好相反,数据是外置的,定主体,控制语句(也就是标记,主要就是一些符号),是内置的,放在了数据的里头。
但因为有了输入,输出,数据,关键字(可以理解成为函数名),键值对(可以理解成为属性),加上Markdown定义的显示。那么理论上的确具有编程语言所需要的特性集。完全可以在一个解释器当中运行。
这里再看下它的传统编程语言的差别:
C#为例:
// A Hello World! program in C# using System; namespace HelloWorld { class Hello { static void Main() { System.Console.WriteLine("Hello World!"); // Keep the console window open in debug mode. System.Console.WriteLine("Press any key to exit."); System.Console.ReadKey(); } } }
这是一个标准的我们很习惯的代码,数据体是内置的,比如"Hello World!",被包裹到控制代码的内部,当然也可以从数据库取,但总体上看代码,就是代码及标记占了绝大部分,数据只占一小部分。
System.Console.WriteLine 这是一个输出
System.Console.ReadKey 这是一个输入
namespace HelloWorld class Hello, Main() 这都是关键字。
如果这样的一个Hello World使用机器人语言会写成什么样子呢?当然这里我们用中文来写。大体上可能是这样子:
机器人语言的中文编程例:
#你好世界# 你好,世界,请按任意键结束?
恩,这就是程序。
机器人语言特性探索1-总体方向