关于中文编译的一些设想-1

笔者的期望

对于已经习惯于现有编译体系的我们来说,或许是想象不到真正的中文编译究竟是何种模样。又或许是计算机专业人与包括笔者的我们来说,思考角度存在偏差,致使我们对中文编译的那些“中文编译是黑科技”,“文言编译”等天马行空的想象,看起来像是为难计算机专业人的发际线。
不过,对于中文编译,笔者始终期望能够在现代编译体系中占据一席之地。笔者也丝毫不怀疑,中文编译能不能实现,因为笔者始终坚信,编译语言采用英语只是因为它的发明者的母语恰好就是英语。

探讨中文编译设想的切入角度

就笔者个人感悟来说,平常交流写作中,往往关注语义方面,而不会太多关注语法方面,且还是笔者中学开始学习英语时才初次了解语法这个概念。所以笔者选择从语义作为切入点,就此探讨中文编译未来的可能模样。另外,笔者对于语法的认知是,语法是对语言应用的总结归纳,因此,笔者选择语义作为切入点,就此探讨语义推导出语法的可能。

描述

什么是描述,先看例子:

桌面上有个苹果,这时,你是直接观察者,你的朋友问你,你看到了什么,你回答说,“桌面上有个苹果”,这句话就是对你看到的场景的描述。

从上面的例子可以看出,观察目标,我们用 a a a 来表示,你朋友限定的观察方式“看”,我们用 f f f 来表示,描述,我们用 b b b 来表示。现在,我们可以将三者的关系为: b = f ( a ) b=f(a) b=f(a) ,读作对于观察方式 f f f b b b a a a 的描述。

这时,你观察到苹果被移动了一下,描述跟着改变,“桌面上有个苹果,它被移动了一下”。描述改变了,因此我们用 c c c 来表示。观察方式不变,观察目标不变,而观察目标的状态变了,因此,我们用 a ′ a' a 来表示状态变化,那么三者关系表示为: c = f ( a ′ ) c=f(a') c=f(a)

进一步思考,例子中观察目标的状态变化是 a a a a ′ a' a ,而描述从 b b b c c c ,这个过程我们可以表示为: b → c = f ( a → a ′ ) b \rightarrow c = f(a\rightarrow a') bc=f(aa)

接着思考例子,作为直接观察者的你观察到的是一个场景,而你的朋友问你,“桌面是什么颜色,苹果是什么品种”。如果要回答这个问题,你需要对观察的场景进行解构描述,即,场景由什么组成。在例子中,我们看到,场景是由“桌面”,“苹果”组成,我们分别用 d d d e e e 来表示。那么,对于观察方式 f f f ,描述可以表示为: { d , e } = f ( a ) \{d,e\} = f(a) {d,e}=f(a) 。而例子中,两个物体又具有空间关系,进一步可以表示为: d e = f ( a ) de =f(a) de=f(a)。假设,这是苹果没有被移动,那么可以得到: b = d e b=de b=de,其中 d e de de 表示两个物体的任意空间组合共同描述。

现在,我们接着回答问题“桌面是什么颜色,苹果是什么品种”。桌面颜色我们可以直接看到,即观察方式不变,而苹果什么品种直接看是看不到的,即观察方式有所改变,用 m m m 来表示。若将观察目标变为苹果,那么描述可以表示为: g = f m ( e ) g=fm(e) g=fm(e) 。其中 f m fm fm 表示两个观察方式。

接着将观察目标变为桌面,观察方式没有变,但是是由“颜色”还有“位置”共同描述桌面,即桌面解构为两个属性。这时,我们可以用刚才解构场景的方法,解构描述桌面。桌面的“颜色”用 d c dc dc 来表示,桌面的“位置”用 d s ds ds 来表示,那么可以得到桌面的描述为: { d c , d s } = f ( d ) \{dc,ds\}=f(d) {dc,ds}=f(d)

现在,通过例子可以初步回答开头的问题,以及初步明确描述相关概念。定义:描述是一个系统对另一个系统的模拟。

描述空间
定义一:
对于任意观察方式 f f f ,观察目标 a a a 的描述表示为集合 K K K 时,称这个集合为 a a a描述空间。当描述为 K K K中任意个元素组成的任意有序序列时,称此描述为 描述向量

定义二:
对于任意观察方式 f f f ,描述系统 A A A对被描述系统 D D D 的所有描述构成的集合,称此集合为D关于A的描述空间,记作 A ′ = f ( D ) A'=f(D) A=f(D)

标识

在讲解这一段前,我首先要感谢我们的先辈们,是他们创造了文字,并留下一个庞大丰富的文字符号体系,让我们不再为标识事物而绞尽脑汁用何种事物来标识。

回到正题,什么是标识,最为简单的回答是分门别类,用易传中的描述讲,方以类聚,物以群分。

简单例子,分苹果,苹果在我们的观念中可以在不同场合中可以用一个符号a标识它是苹果。设现在有三个苹果,我们可以分别用a,a,a标识,因为在观念中它们是相同,而分给三个人后,还是三个苹果,但所属关系不一样了,所以,我们可以这样区分,i,y,h,代表三个人,每人的苹果就可以这样标识,ia,ya,ha。

由此我们可以引申出标识的定义,标识是用于区分事物的,让被标识事物具有与标识相同的描述的事物。这是一般的定义,我们观念中的标识一般是指我们所用的庞大复杂的文字符号系统。

定义的解释先放在一边,我们先想一个问题,在讨论描述时采用了一个描述事物的方法,那就是绘画,那么我们能不能画出世界上所有的事物?或许可以。在这里我们假设可以描绘出世界上所有事物,且存在观察手段f,使得它们不同,又存在观察手段m使得它们相同,那么它们它们能不能描述世界?
这个问题转化过来,就是有没有无限个符号,且它们互不相同,用于描述世界上所有事物。而这些符号又可作为标识,来标识事物的属性。
这个问题笔者不知道答案,而且笔者个人认为这个问题是没有意义的。不过,从这个问题我们可以反过来看,有限个不同的符号能不能描述世界上所有事物。这个问题,先辈们已经给出一部分答案,那就是我们的文字符号系统。

我们的文字符号系统是有限个不同符号组成的系统,为了应对复杂的描述,我们建立了以一维有序序列为基础的书写体系,这部分是标识的核心。
在忽略文字符号的自然语言语义后,可以将之单纯的用作标识符。在标识超出文字符号数量的事物时,采用一维序列方式进行标识,尤其发展出两套标识方法。

第一,循环递进标识法,对应现代数字符号系统,比如,十进制的 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 … … 0,1,2,3,4,5,6,7,8,9,10,11…… 01234567891011
第二,结构标识法,对应现代代数系统以及自然语言。比如, a + b a+b a+b,自然语言中的语法,就属于结构标识法。

关于这两个标识法,留待下一章讨论。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不过日落

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值