有几位现代犹太人对我的影响甚大,除了以赛亚柏林、米尔顿弗里德曼、冯诺以曼等人,大概乔姆斯基算是其中之一。下面是维基给出的“逆天”简历:
Avram Noam Chomsky (born December 7, 1928) is an American linguist, philosopher, cognitive scientist, social critic, and political activist. Sometimes called “the father of modern linguistics”, Chomsky is also a major figure in analytic philosophy and one of the founders of the field of cognitive science.
乔姆斯基(生于1928年12月7日)是一位美国语言学家、哲学家、认知科学家、社会批评家以及政治活动家。除了有时被人称为“现代语言学之父”之外,乔姆斯基还是分析哲学的代表性人物,认知科学领域的奠基者之一。
乔老爷的语法层次理论(正则语言、上下文无关文法、上下文有关文法、短语文法)是现代计算机语言编译系统的基础。对于一般的程序员而言,“正则语言”则几乎是划分菜鸟和好手的明确界限(是的,会正则语言的程序员效率将是不会的人的数倍)。
我面试程序员时,一般性的问题随意问答,但是三个问题判断水平和工资:
- 现场口译一段专业文献:英翻汉。因为一个人若英语都学不好,默认无法学好更难的C语言或Go语言。
- 现场写一个正则表达式,提取一张网页中的所有超链接。
- 写一个可操作的SQL查询语句,完成一个查询。
这三个测试都与具体的语言、工具和平台无关,但是可以在10分钟内寄出简历上的一切水分,快速测试一个人在软件开发上的潜力和水平。
扯远了。回到正题上,我要具体用一个例子来说明正则语言在翻译上的应用。
在我翻译F.F.Bruce的“使徒行传”时,常常出现这样的短语:
- see p. 400 with 10
- See pp. 91–92, 15 (on 4:6)
- See p. 410 with 51
- see below on 17:14–15, pp. 336–37 with nn. 64, 65, 66, and 67
一开始我认为“see p. 400 with 10”是“见第400页关于第10节的注释”,后来我突然意识到,这个短语原来是“见原书第400页脚注10”的意思。
以此类推,后面三个短语依次是“见原书91-92页关于4:6的脚注15”;“见原书第410页脚注51”;“见原书以下336-37页对17:14-15的注释,以及脚注64、65、66及67”。
于是,我就可以利用乔老爷的正则文法,将所有形如” see p. 400 with 10″, “see p. 410 with 51″的短语编写为一个正则表达式:
see p. (\d+) with (\d+)
这个表达式中有些不变的部分,是用来解析定位短语的,比如前导的短语常量“see p.”和中间的“with”,而两个数字则是可变的,于是用“(\d+)”予以代替。“\d”表示单独的数字,也就是0-9中间任何一个数字,而“+”表示数字至少出现一次,后接0-n个数字。在语法解析上,这就叫做“递归解析”了(算了,我还是不用术语来麻烦大家了)。
然后,写另一个正则表达式,代表我希望的自动转换:
见原书第$1页,脚注$2
在我目前使用的MemoQ上,有一个专门的文件,保存所有这样的自动转换规则。于是,每次遇到类似的短语,我只需要一个快捷键就能弹出下面的各种选择,并简单地选择正则表达式自动替换的译文:
- - - - - -
在翻译过程中引入正则表达式,至少有3个好处。
- 从击键次数上看,原本需要的27次击键次数,变成了一个快捷键加上一次鼠标选中。对于长期操作键盘的人来说,击键次数是衡量效率的重要指标。
- 在这个过程中,我的大脑得到短暂的休息,因此可以工作略微高效一点。
- 用自动化过程保证了文本的一致性,避免了数字输入的失误。要知道,编辑和校对最烦的问题不是翻译错误,而是标点符号的不规范。比如,明明要求经文索引用书卷略写加半角冒号分割的章节号(比如,“约 3:16”),译者偏偏有的地方按照标准做,有的地方写成了全角的冒号(“约 3:16”),有的地方又忘掉了空格(“约3:16”)。
因此,我交付的译文,虽然质量不一定好到哪里去,但至少编辑对我遵守翻译约定的一致性,不会提出任何不满。因为一切都是由正则表达式在控制,而计算机不会疲劳、不会倦怠、不会被孩子们的打闹所惹恼,在机械操作上的错误率远远低于人类。
这就是“计算机辅助翻译系统”(或者说CAT)的用处所在。
本文希望澄清:在神学翻译酬金暂时难以提高的情况下,译者们完全可能通过计算机的帮助提高产出率和译文质量。