作者:EksManhn_188 | 来源:互联网 | 2023-09-09 11:50
自然语言是人们日常用的语言,如英语、西班牙语和法语。它们不是人们设计的(虽然人们试图给它们附加了一定的秩序);它们自然地演进。形式语言是由人们为特定的应用而设计的语言。例如,数学家
自然语言
是人们日常用的语言,如英语、西班牙语和法语。它们不是人们设计的(虽然人们试图给它们附加了一定的秩序);它们自然地演进。
形式语言
是由人们为特定的应用而设计的语言。例如,数学家使用的符号就是一种形式语言,在表达数字和字符之间的关系方面是它的特长。化学家使用形式语言表达分子的化学结构。并且最重要的是:
程序语言是设计用来表示计算的形式语言。
形式语言通常有着严格的语法规则。例如,3 + 3 = 6是语法正确的数学语句,但3 + = 3 $ 6不是。H 2
O是正确的化学式,但 2
Zz
不是。
语法规则有两种类型, 标记
和结构。标记是基本的语言元素,如词、数字和化学元素等等。对于3 + = 3 $ 6问题之一是$在数学中不是合法的标记(至少目前如此)。类似地, 2
Zz
也不合法,因为没有缩写为 Zz
的元素。
语法规则的第二种类型是语句的结构。也就是说,安排标记的方式。语句3 + = 3是非法的,因为即使+和=是合法的标记,但不能一个紧跟在另一个后面。类似地,在化学式中下标出现在元素名称之后,而不是之前。
练习 1
用英语写出一个结构良好的句子,其中要含有无效的标记。接着另一个句子,其中含有的标记都有效但结构无效。
在阅读英语中的句子或者形式语言中的语句时,要理解语句的结构是怎样的(虽然在自然语言中,通常潜意识的这样做)。这个过程称为 解析
。
例如,当听到句子:“The penny dropped”(“终于明白了”),“the penny”应该理解为主语,“dropped”是谓语。一旦解析完语句,就能理解它的意思,或者说语句的语义。假如理解了“penny”的含义和“drop”的含义,就会理解该句通常的含义。
虽然形式语言和自然语言有许多共同的特征——标记、结构、语法和语义,但也有些不同。
二义性
。自然语言充满了二义性,它是人们用语境和其他信息表达的。形式语言被设计得几乎或者完全无二义性,这意味这任何语句仅有一个意思,且不必考虑语境。
冗余性
。为了弥补二义性并减少误解,自然语言使用了大量的冗余。结果是,它们常常啰啰嗦嗦。形式语言很少冗余而更加精确。
无修饰性
。自然语言充满了习惯用语和比喻。如果我说:“The penny dropped”,可能没有硬币而且也没有掉落(这一习惯用语意思是终于明白了)。形式语言说的是什么就是什么。
人们说着自然语言长大——每个人——通常对自然语言的适应要经过一个艰难的过程。在某些方式上,形式语言和自然语言的不同与诗歌和散文的不同有些相似,但有着更多的不同。
诗歌
。用词表音也表意,并且诗歌整体上表现效果或者反映情感。二义性不仅是常见的,而且常常是故意的。
散文
。词语的文学意义更重要,结构更多是在表意方面。散文比诗歌更易于分析,但常常还是有二义性。
程序
。计算机程序的意义是非二义性的和字面上的。通过分析标记和结构完全可以理解其意义。
这对阅读程序也有所暗示。首先,要记住形式语言比自然语言更稠密,因此对懂它们要花更长的时间。而且,结构非常重要,因此从上到下、从左到右的阅读通常不是好主意。相反,要学会在头脑中解析程序,识别出标记,解释出结构。最后,细节更重要。小的拼写和发音错误,在自然语言中蒙混过关,但在形式语言中有很大的不同。