Welcome Guest ( Log In | Register )

欢迎访问本站。游客仅能浏览首页新闻、版块主题、维基条目与资源信息,需登录后方可获得内容发布、话题讨论、维基编辑与资源下载等权限。若无账号请先完成注册流程。
Posted By: TheFool @ 2017-08-08, 13:58

# (如何(用Python)写一个(Lisp)解释器)

- 作者:Peter Norvig
- 翻译及少量魔改:TheFool

这篇文章有两个目的:

1. 通用地介绍如何实现计算机语言的解释器。
2. 介绍如何利用Python实现Lisp方言Scheme的一个子集。

我将我的这门语言以及解释器称之为Lispy。数年之前,我演示了如何用Java和Common Lisp写Scheme解释器。这次我的目标是以一种尽可能简明的方式演示Alan Kay所谓的“[*Maxwell's Equations of Software*](http://www.righto.com/2008/07/maxwells-equations-of-software-examined.html).”

为什么这很重要? [Steve Yegge说过](http://steve-yegge.blogspot.com/2007/06/rich-programmer-food.html) :“若你不知道编译器(或解释器)是怎么工作的,那你就无从得知计算机的运转原理。”

## Scheme程序的语法和语义

一门语言的语法(syntax)指的是字母排列成正确表达式或声明的顺序;语义(semantics)则是这些表达式或声明的意义。例如在数学和许多编程语言之中,一加二的语法是“1 + 2”, 语义则是将加法运算符应用于数字1和2之上,得到结果3。我们将计算表达式的值称之为求值(evaluating);“1 + 2”求值得到结果3,我们将之记为“1 + 2” => 3。

Scheme的语法与你熟悉的大部分语言不同。例如:

```java
// Java
if (x.val() > 0) {
fn(A[i] + 1,
return new String[] {"one", "two"});
}
```

```lisp
;; Scheme
(if (> (val x) 0)
(fn (+ (aref A i) 1)
(quote (one two)))
```



Java有大量不同的语法约规(关键字、中置操作符、三种括号、操作符优先级、点、引号、逗号、分号等等),而Scheme的语法则简单很多:

- Scheme程序中只有表达式。表达式和声明之间并无区别。
- 数字(例如 1)和符号(例如 A)被称之为原子表达式(atomic expression);他们无法被拆分成更小的表达式。这部分和Java类似,但在Scheme中,诸如 + 和 > 这种操作符也被认为是符号(symbol),处理方式与A或是fn这种符号别无二致。
- 除此之外的一切都是列表表达式(list expression):以“(”为首,“)”为尾,中间包括着零个或更多表达式。列表的第一个元素决定了它的含义:
- 若第一个元素是关键字,例如(if ...),那这个列表是一个特殊形式(special form);特殊形式的意义取决于关键字。
- 若第一个元素并非关键字,例如(fn ...),那这个列表则是函数调用。


Scheme之美在于她的简洁性:整个语言由5个关键字和8个语法形式构成。相较之下,Python有33个关键字和110个语法形式,Java有50个关键字和133个语法形式。Scheme中的大量括号初看起来可能显得古怪陌生,但括号为Scheme提供了简洁性和一致性。(有些人开玩笑说Lisp的意思是“大量又蠢又烦的括号(Lots of Irritating Silly Parentheses)”;我觉得应该是“Lisp拥有纯净的语法(Lisp Is Syntactically Pure)。”)

在这篇文章中我们会涉及到Scheme中所有的关键点(除了一些琐碎的细节)。但罗马城不是一天建成的,我们需要分两步。首先,我们会定义一个相对简单的语言,再在它的基础上定义一个几近完整的Scheme语言。

## 1号语言:Lispy计算器

Lispy计算器是Scheme语言的一个子集,它只包含五种语法形式(两种原子,两个特殊形式,以及过程调用)。只要你习惯了Lisp前置运算符的古怪语法,你就能利用Lispy计算器干一般计算器的活。你还能干一般计算器干不了的活:使用"if"表达式进行条件判断以及定义新的变量。我们来举个例子,以下是一个计算圆面积的程序,圆的半径为10,计算公式为πr^2:

```lisp
(begin
(define r 10)
(* pi (* r r)))
```

下面这张表列举了所有可用的语法形式:

| 表达式(expression) | 语法(syntax) | 语义(sematics)及范例 |
| ------------------------ | ---------------------- | ---------------------------------------- |
| 变量引用(variable reference) | *var* | 该符号被认为是变量名;它的值是变量的值。范例:r => 10 (假设我们之前将r定义为10) |
| 字面常量(constant literal) | *number* | 一个数字(number)求值得到它自身。范例:12 => 12 或 -3.45e+6 => -3.45e+6 |
| 条件(conditional) | (if *test conseq alt*) | 对*test*进行求值;如果结果为真,对*conseq*进行求值并返回结果;否则对*alt*求值并返回结果。范例:(if (> 10 20) (+ 1 1) (+ 3 3)) ⇒ 6 |
| 定义(definition) | (define *var exp*) | 定义一个新的变量,将*var*的值定义为*exp*求值得到的结果。范例:(define r 10) |
| 过程调用(procedure call) | *(proc arg...)* | 如果*proc*不是if, define或quote其中之一,那它就被认为是一个过程(procedure)。对*proc*和所有的*args*求值,然后将proc过程应用于所有的args之上。范例:(sqrt (* 2 8)) => 4.0 |

在表中“语法”一列中,*var*必须为一个符号,*number*必须为一个整数或浮点数,其他斜体字可以是任何表达式。其中的“*arg...*”表示零个或更多个"*arg*"。在“真正”的Scheme中,begin是一个语法关键字,但在这个Scheme实现中,它只是一个普通的函数。

## 语言解释器做些什么?

一个计算机语言的解释器分为两部分:

1. **分析(parse)**:解释器的分析部分将程序以一串字符的形式读入,依照语法规则(*syntactic rules*)验证其正确性并将程序转换成一种内部表达形式。在一个简单的解释器中,内部表达形式是一个树形结构,人们一般将其称之为*抽象语法树 (abstract syntax tree)*。抽象语法树的结构和程序中层层嵌套的声明及表达式非常相近,几乎可以说是完美对应。在编译器之中往往存在多个内部表达形式,一开始先转换成抽象语法树,随后再转换成可以直接被计算器执行的指令序列。Lispy的语法分析器由parse函数实现。
2. **执行(execution)**:内部表达形式被按照语言的语法规则进行处理,以此来进行计算。Lispy的执行函数叫做eval (注意,这会覆盖Python的同名内置函数)。

以下是对解释器工作流程的一个简单的演示:

```
程序 ---> [parse] ---> 抽象语法树 ---> [eval] ---> 结果
```

下面这个例子则展示了我们希望eval和parse实现的功能:

```
>> program = "(begin (define r 10) (* pi (* r r)))"

>>> parse(program)
['begin', ['define', 'r', 10], ['*', 'pi', ['*', 'r', 'r']]]

>>> eval(parse(program))
314.1592653589793
```

## 分析:parse, tokenize 以及 read_from_tokens

依照传统,分析被分为两个部分:

1. 词法分析(lexical analysis):在这一部分中,输入的字符串被拆分为一系列的token。
2. 语法分析(syntactic analysis):将token汇编为抽象语法树。

Lispy token们由括号,符号和数字组成。由许多用来进行词法分析的工具(例如Mike Lesk和Eric Schmidt写的lex),但我们只需要用到一个十分简单的工具:Python的str.split函数。tokenize函数接受一个字符串,并在括号周围加上空格;随后调用str.split来得到一个由token组成的列表:

```python
def tokenize(chars):
"将字符串转换成由token组成的列表。"
return chars.replace('(', ' ( ').replace(')', ' ) ').split()
```

```
>>> program = "(begin (define r 10) (* pi (* r r)))"
>>> tokenize(program)
['(', 'begin', '(', 'define', 'r', '10', ')', '(', '*', 'pi', '(', '*', 'r', 'r', ')', ')', ')']
```



我们的parse函数接收一个字符串作为输入,然后调用tokenize函数获得一个由token组成的列表,再调用read_from_tokens来将token列表汇编成抽象语法树。read_from_token函数会查看第一个token,如果是“)”,那就报出一个语法错误。如果是“(”,那我们就开始构建一个由子表达式组成的列表,直到匹配到对应的“)”。所有非括号的token必须是符号或者数字。我们会让Python来识别它们之间的区别:对任何一个非括号token,先尝试将之转为整数,若失败则尝试转为浮点数,若还是失败,则转为符号。下边是parser的代码:

```python
def parse(program):
"从字符串中读取Scheme表达式"
return read_from_tokens(tokenize(program))

def read_from_tokens(tokens):
"从一串token之中读取表达式"
if len(tokens) == 0:
raise SyntaxError('unexpected EOF while reading')
token = tokens.pop(0)
if '(' == token:
L = []
while tokens[0] != ')':
L.append(read_from_tokens(tokens))
tokens.pop(0) # pop off ')'
return L
elif ')' == token:
raise SyntaxError('unexpected )')
else:
return atom(token)

def atom(token):
"数字转为对应的Python数字,其余的转为符号"
try: return int(token)
except ValueError:
try: return float(token)
except ValueError:
return Symbol(token)
```

parse函数的工作方式如下:

```
>>> program = "(begin (define r 10) (* pi (* r r)))"

>>> parse(program)
['begin', ['define', 'r', 10], ['*', 'pi', ['*', 'r', 'r']]]
```

我们还需要决定一下各种Scheme对象在Python中的表示方法:

```python
Symbol = str # Scheme符号由Python str表示
List = list # Scheme列表由Python list表示
Number = (int, float) # Scheme数字由Python的整数或浮点数表示
```

好了!定义eval的准备工作基本都做好了。但我们需要先了解更多的概念。

## 环境(Environments)

eval函数接受两个参数:一个我们想要求值的表达式x,还有一个环境env,x将在这个环境中被求值。*环境*指的是变量名和他们的值之间的映射。eval默认会使用全局环境(global environment)进行求值,全局环境包含着一系列的标准函数(比如sqrt, max和 * 这类操作符)。这一环境可以用用户定义的变量拓展,语法为 (*define variable value*)。我们可以用Python自带的字典来实现环境,字典中的键对为{变量: 值}的形式。

```python
import math
import operator as op

Env = dict # 环境是{变量: 值}之间的映射

def standard_env():
"一个包含着一些Scheme标准过程的环境。"
env = Env()
env.update(vars(math)) # sin, cos, sqrt, pi, ...
env.update({
'+':op.add, '-':op.sub, '*':op.mul, '/':op.div,
'>':op.gt, '<':op.lt, '>=':op.ge, '<=':op.le, '=':op.eq,
'abs': abs,
'append': op.add,
'apply': apply,
'begin': lambda *x: x[-1],
'car': lambda x: x[0],
'cdr': lambda x: x[1:],
'cons': lambda x,y: [x] + y,
'eq?': op.is_,
'equal?': op.eq,
'length': len,
'list': lambda *x: list(x),
'list?': lambda x: isinstance(x,list),
'map': map,
'max': max,
'min': min,
'not': op.not_,
'null?': lambda x: x == [],
'number?': lambda x: isinstance(x, Number),
'procedure?': callable,
'round': round,
'symbol?': lambda x: isinstance(x, Symbol),
})
return env

global_env = standard_env()
```

## 求值:eval

现在,我们已经做好了实现eval函数的准备。来让我们重新看一遍Lispy计算器的语法形式表以加深一下记忆:

| 表达式(expression) | 语法(syntax) | 语义(sematics)及范例 |
| ------------------------ | ---------------------- | ---------------------------------------- |
| 变量引用(variable reference) | *var* | 该符号被认为是变量名;它的值是变量的值。范例:r => 10 (假设我们之前将r定义为10) |
| 字面常量(constant literal) | *number* | 一个数字(number)求值得到它自身。范例:12 => 12 或 -3.45e+6 => -3.45e+6 |
| 条件(conditional) | (if *test conseq alt*) | 对*test*进行求值;如果结果为真,对*conseq*进行求值并返回结果;否则对*alt*求值并返回结果。范例:(if (> 10 20) (+ 1 1) (+ 3 3)) ⇒ 6 |
| 定义(definition) | (define *var exp*) | 定义一个新的变量,将*var*的值定义为*exp*求值得到的结果。范例:(define r 10) |
| 过程调用(procedure call) | *(proc arg...)* | 如果*proc*不是if, define或quote其中之一,那它就被认为是一个过程(procedure)。对*proc*和所有的*args*求值,然后将proc过程应用于所有的args之上。范例:(sqrt (* 2 8)) => 4.0 |

来和eval的代码对比一下,是不是觉得很像?

```python
def eval(x, env=global_env):
"对在某个环境下的表达式进行求值"
if isinstance(x, Symbol): # 变量引用
return env[x]
elif not isinstance(x, List): # 字面常量
return x
elif x[0] == 'if': # 条件
(_, test, conseq, alt) = x
exp = (conseq if eval(test, env) else alt)
return eval(exp, env)
elif x[0] == 'define': # 定义
(_, var, exp) = x
env[var] = eval(exp, env)
else: # 过程调用
proc = eval(x[0], env)
args = [eval(arg, env) for arg in x[1:]]
return proc(*args)
```

搞定!来试试吧:

```
>>> eval(parse("(define r 10)"))
>>> eval(parse("(* pi (* r r))"))
314.1592653589793
```

## 交互:来做一个REPL

一直打“eval(parse(...))”的话即便是耐心再好的人也会嫌烦。Lisp最伟大的遗产之一就是引入了read-eval-print loop(读取-求值-输出 循环,缩写为REPL,译者注)。运用REPL,程序员们可以即时地读取、求值、输出,而不用麻烦地先编译再运行。我们先定义一个名为repl的函数以实现这个功能,然后再定义一个schemestr函数来输出Scheme对象的字符串表示。

```python
def repl(prompt='lis.py> '):
"REPL的懒人实现。"
while True:
val = eval(parse(raw_input(prompt)))
if val is not None:
print(schemestr(val))

def schemestr(exp):
"将一个Python对象转换回可以被Scheme读取的字符串。"
if isinstance(exp, List):
return '(' + ' '.join(map(schemestr, exp)) + ')'
else:
return str(exp)
```

老样子,做完以后来试试:

```
>>> repl()
lis.py> (define r 10)
lis.py> (* pi (* r r))
314.159265359
lis.py> (if (> (* 11 11) 120) (* 7 6) oops)
42
lis.py>
```
Comments: 2 :: View Comments

Posted By: Kiw @ 2016-12-20, 13:03
第一次翻译文章,有很多不熟练的地方,请多指教。原文在此

雾号
THE FOG HORN
雷·布莱伯利
Ray Bradbury

在那冰冷海水中,远离陆地的地方,我们夜夜等待大雾的降临。而后雾气到来,我们便给那黄铜的机械上油,然后点亮石塔上的雾灯。如同灰霾天空中的两只鸟,麦克邓恩和我打出灯光,红光,白光,又是红光,来指引孤单的航船。如果他们看不见我们的灯光,我们还能发出声响。我们的雾号的深厚鸣响能把浓雾震成碎片,能让海鸥像一沓纸牌一样惊散,能让波浪高高翻腾,涌出白沫。

“真是孤单的生活啊。不过你已经习惯了,不是吗?”麦克邓恩问。

“是啊,”我说,“你真是个话痨,感谢上帝。”

“呃,明天就轮到你上岸了,”他笑着说,“和姑娘们跳跳舞,喝喝酒。”

“麦克邓恩,我把你一个人留在这的时候,你都在想什么?”

“我在想大海的奥秘。”麦克邓恩点燃烟斗。此时是十一月某个寒冷的夜晚,七点一刻,暖气开着,雾灯曳尾发向二百个方向,雾号在塔上高声鸣叫。远离海岸几百英里的地方都没有城镇,只有公路,孤零零地从死城延伸到海边,几乎没有车辆;还有两公里海港,也几乎没有船只。

“大海的奥秘,”麦克邓恩若有所思,“你知道吗,海洋是世界上最大的雪花。它翻滚、扩展成几千种形状和颜色,两两都不相同。多奇怪啊。某个晚上,那是几年前了,我一个人在这,海里所有的鱼全在这里浮上来了。有什么东西让它们游进了海湾,然后停在这,瑟瑟发抖地仰视着灯塔的光,看着光在它们上方变红,变白,变红,变白,我因此看见了它们奇怪的眼睛。我周身冰冷。它们像是大孔雀的尾羽,游来游去,直到午夜。然后几乎悄无声息地,它们全都走了。几百万只全都走了。我想也许在某种程度上,它们游过重洋是为了来此朝圣。多奇怪啊。不过想想灯塔在它们眼里是什么样,高出海面七十英尺,神光四射,又像怪物一样鸣叫。那些鱼,它们再也没回来,不过你不觉得它们那时以为自己目睹了上帝的降临吗?”

我打了个冷战。我看着外面的大海,它像灰色的长麻布一样,延展到无限远方的无有之地。

“哦,大海无所不包,”麦克邓恩眨着眼,紧张地抽着烟斗。他整整一天都很紧张,也没有说为什么。“对于我们的引擎和那些所谓的潜艇来说,得需要一万个世纪才能真的踏足于那片沉没的陆地,然后在那仙境一样的地方,感受到真正的恐惧。想想吧,那里还停留在史前三十万年前呢。当我们吹号行军,入侵彼此的国家,砍下彼此的脑袋的时候,它们就住在水下十二英里的又深又冷的地方,那里的历史和彗星的胡子一样老。”

“是啊,一片古老的土地。”

“跟我来,我一直有件特别的事情想告诉你。”

我们登上八十级台阶,边说边走,不紧不慢。在顶层,麦克邓恩关上房间里的灯,于是玻璃上的反光消去了。塔上的大灯嗡嗡作响,在上过油的槽里轻松转动着。雾号持续鸣响,十五秒一次。

“听起来真像个动物,不是吗?”麦克邓恩自顾自点了点头,“一个在夜间嚎叫的孤单巨兽。栖身于千万年的时光悬崖之上,呼唤着深渊:我在这,我在这,我在这啊。然后深渊给以回应,是的,它们回应了。你在这已经三个月了,乔尼,所以我最好让你做好准备。每年大约这个时候,”他说,研究着黑暗和浓雾,“都会有东西来灯塔这里。”

“就是你说的那群鱼?”

“不,这次是不一样的东西。我一直尽量拖延告诉你的时机,免得你认为我是疯子。但我只能拖到今晚了,因为如果我去年至今没标错日历,那么今晚那东西就会来。我不再具体说了,你需要自己亲眼看。就坐在这里看。如果你乐意,明天就可以卷铺盖走人,搭一艘汽船回到内陆的皮艇港口,然后开着你的车返回腹地的某个小镇,彻夜燃灯。我不会质问或者责备你。这件事至今已经发生了三年了,而这次是唯一一次有人陪我一起证实它。你就等着看吧。”

半个钟头在我们的几声低语中流逝。当我们都等得不耐烦的时候,麦克邓恩开始给我描述他的一些想法。他有关于雾号本身的若干理论。

“很久很久以前,有个人独自走在阴冷无光的海岸上,他在潮声中停步。‘我们需要一个声音来横跨洋面,去警告航船。我要做出一个。我要让那声音,像长夜中在你身畔的一张床,像你推开的门后的一间空房,像秋日里没有叶子的树木。那声音,像鸣叫着的南飞的鸟,像十一月的风,像冷硬海滩上的大洋。我要让那声音无比孤寂,以至于没人会错过它,让每个听到此声的人都在灵魂深处哭泣,向着遥远城镇里闻听此声的人哭泣。我要自己做出这样的声音和装置,人们将称它为雾号,每个听到它的人都会体悟到人生的短暂和永恒的悲哀。’”

雾号鸣叫起来。

“这个故事是我编的,”麦克邓恩轻轻地说,“试图解释为什么那东西每年都要回到灯塔这里。雾号在呼唤它,我想,于是它就来了……”

“但是——”我说。

“嘘!”麦克邓恩说,“看那儿!”他向着深渊点了点头。

有什么东西正向灯塔游来。

正如我所说,这是个凄冷的夜晚。高高的灯塔不胜寒冷,雾灯照来照去,雾号声声鸣叫,穿透层层迷雾。我看不远也看不清,但我知道深海正向着夜间的陆地流淌而来,平稳又寂静,带着湿泥的灰色。我们两人,孤单地待在灯塔之上。而后就在那里,远远的,出现一缕涟漪,然后是一层波浪,翻滚着,涌起白沫。再然后,冰冷的海面上探出一颗头,一颗巨大的头,有着深深的颜色和一双巨眼,然后是脖颈。再然后出来的——不是身体——而是越来越长的脖颈!在修长美丽的脖子上面,巨头探出水面四十英尺。直到那时身体才浮上来,仿佛小小的、覆盖着蚌壳和虾类的黑珊瑚礁,从地表之下浮现。它的尾巴轻摇了一下。从头顶到尾尖,我估计这怪兽大概有九十到一百英尺长。

我不知道我说了什么。但我的确说了点什么。

“冷静,孩子,冷静,”麦克邓恩轻声说。

“这不是真的!”我说。

“不,乔尼,我们才不是真的。这就像一千万年前一样,什么也没有改变。只有我们和这片陆地改变了,我们变得不再真实了。我们!”

它仿佛一个威严的王者,款款游动在遥远的冰水里。雾气笼罩过去,短时间地遮住它的身形。怪兽的一只眼睛发现了我们的大灯,光亮反射过来,红,白,红,白,宛若一个高处的天线,发射着原始的电码。这怪兽就像它缓缓游过的那片雾一样安静无声。

“这肯定是某种恐龙!”我蹲下来,抓住楼梯扶手。

“是的,一个种群里的一只。”

“但恐龙灭绝了!”

“不,它们只是藏进了深渊,深深的,深深的,深深的深渊。这是怎么样的一个词啊,乔尼,不是一个简单的词,它表示得太多了:‘深渊’。这个词,已经涵盖了世界上所有的寒冷、黑暗和深邃。”

“我们该怎么办?”

“该怎么办?我们有我们的本职,我们不能离开。再说了,坐再好的船回岸,也不如我们在这里呆着安全。那东西大得像个驱逐舰,也像驱逐舰一样敏捷。”

“但是这里,它为什么来这里?”

下一刻,我就得到了答案。

雾号吹响了。

怪兽回应了。

一声长啸,跨越了百万年的重洋与迷雾。那啸声无比痛苦和孤独,在我的脑海和身体中回颤。那怪兽向着灯塔吼叫。雾号吹响了。那怪兽再度吼叫。雾号吹响了。巨兽张开尖牙密布的大嘴,它发出的声音,是和雾号一样的声音。孤寂,浩然,遥远。那声音来自寥寥之地,茫茫之海,凄凄之夜,茕茕之心。就是那样的声音。

“现在,”麦克邓恩轻轻说道, “你知道它为什么要来这了?”

我点了点头。

“年复一年,乔尼,这可怜的怪兽就潜藏在千里之外的海洋,也许在二十英里深的海底,等待着,也许已经等待了一百万年,孤身一人。想想吧,一百万年,你等得了这么久吗?也许它是同类生物的最后一个。我十分确信这个猜想。总之,岸上的人建起了这座灯塔,那是五年前的事。他们安上了雾号,又把它吹响——响彻那个你安睡的、充满了海底回忆的世界,那里曾经有成千上万个你的同类,但是现在你孑然一身,全然孤单地生活在这个不属于你的世界,这个你不得不躲藏的世界。”

“但是那雾号的声音来了又去,来了又去,你在海底深渊的泥泞中翻腾,你的眼睛大大地张开,仿佛巨大的相机镜头;你动起来,慢慢地,慢慢地,因为万吨海水压在你的肩上,无比沉重。但雾号声穿透了上千英里的海水,微弱却又熟悉,你腹中的火炉燃烧起来,你向上浮动,慢慢地,慢慢地。你以鳕鱼和成群的水母充饥,在秋月里一直缓慢上浮,游过薄雾初升的九月,游过雾气渐浓、雾号呼召的十月,然后,十一月底的时候,经过许久的减压、每小时几尺的缓速,你离水面已经很近了,而且你还活着。你必须慢慢来——如果你一下子浮上来,你会爆炸。所以你用了整整三个月浮上来,又用去若干时日,穿过冷水,游向灯塔。然后你就到这里了,就在外面,在这深夜里,乔尼,这创世以来最大最大的怪兽。灯塔呼唤着你,它有和你一样探出水面的长脖子,和你一样的身体,而且最重要的,还有和你一样的声音。你现在明白了吗,乔尼, 明白了吗?”

雾号吹响了。

怪兽回应了。

我全看见了,我全明白了——百万年的独自等待,只为等到一个应该回来却再没回来的人。百万年里,被隔离在海底,承受着时间的荒谬,与此同时,天空中的翼龙一扫而光,大陆上的沼地相继干涸,树懒和剑齿虎一时风光,复又沉进沥青坑里,人类像白蚁一样奔走在群山上。

雾号吹响了。

“去年,”麦克邓恩说,“那个怪兽游了一圈又一圈,一圈又一圈,整整一宿。它不愿游近,它很困惑,或者也可能是恐惧。当然,还有一路游过来积攒的些许恼怒。但是第二天,出乎意料地,雾散了,阳光灿烂,碧空如画。那怪兽在热气和寂静中游去了,再也没回来。我猜这一年里它一直挂记着这灯塔,一直一直想着它。”

怪兽离这里只有几百码远了,它和雾号互相呼应着。灯塔的探照灯打在它的眼睛里,映出火与冰,火与冰。

“这就是生活,”麦克邓恩说,“总有人在等一个永远不会回来的人。总有人爱一个东西远胜它爱他。然后过不了太久你就想毁掉它,于是它便再也无法伤害你。”

怪兽冲向了灯塔。

雾号吹响了。

“让我们看看会发生什么,”麦克邓恩说。

他关上了雾号。

接下来的一分钟是如此的死寂,以至于我们能听见玻璃瞭望窗里的心跳声,能听见探照灯在机油里的缓慢转动声。

怪兽停住了,冻结在原地。它大灯笼一样的眼睛眨了一下。它的大嘴洞开。它低声咕隆着,好像一座火山。它左右转动着脑袋,似乎在找寻那消失在浓雾里的声音。它凝视着灯塔。它再次咕隆起来。然后它的眼睛燃起火焰。它扬起身体,拍打着水面,向着灯塔冲过来,双眼映透着怒火的折磨。

“麦克邓恩,”我大叫,“把雾号打开!”

麦克邓恩笨拙地扳动着开关。但即使他打开了开关,怪兽还是高高地直立起来。我匆匆瞥见了它巨大的爪子——鱼皮一样的网蹼在指状突起间闪闪发光——挠动着灯塔。在它那无比痛苦的面庞上,硕大的右眼在我面前闪动,仿佛一口大锅,让我几乎尖叫着陷落其中。灯塔颤动起来。雾号长鸣,巨兽长啸。它紧抓着灯塔,咬碎了瞭望窗,玻璃碎片纷纷落在我们身上。

麦克邓恩抓着我的胳膊。“快下楼!”

灯塔摇晃着,颤动着,几近崩塌。雾号和怪兽齐声呼叫。我们连滚带爬地奔下台阶。“快!”

我们刚到底下,灯塔便向我们倾塌下来。我们弓身跑下台阶,钻进小小的石室。碎石纷纷如雨,不住刮擦震颤;雾号声戛然而止。巨兽扑上灯塔。塔倒了。麦克邓恩和我跪伏在一起,紧紧握住手,在这世界崩裂之时。

一切全都结束了,四围只有黑暗,和海水拍打在石头上的声音。

还有另一个声音。

“你听,”麦克邓恩轻声说,“你听。”

我们等了一会,然后我渐渐听到了。先是巨大的抽进空气的声音,随之而来的是巨兽的哀声,迷惘和孤寂,层层叠叠扑向我们,漫过我们,它令人作呕的腥臭充斥在空气里,就在我们藏身处的一层石墙之外。它喘息着,它哭喊着。高塔不见了。灯光不见了。那跨越百万年呼唤它的声音也不见了。怪兽张开大嘴,发出震耳欲聋的声音。那是雾号的声音,一声又一声。于是在这深夜里,那些远处的航船,看不到灯光,看不到任何东西,却能听见这声音。他们一定会想:这就是了,孤寂的声音,寂寞湾的雾号。好极了。我们已经过了海岬了。

后半夜匆匆而过。

第二天下午,救援队把我们从碎石遍地的地下室里救出来。外面艳阳高照。

“它倒了,就是这样,”麦克邓恩沉痛地说,“几个巨浪拍过来,它就这样塌了。”他掐了掐我的胳膊。

没有什么特别的迹象。大海平静,天空湛蓝。只是,有一大片绿色的东西覆盖着倒塌的塔基和海岸,散发着海藻的恶臭。蝇群嗡嗡飞动。海浪把岸滩冲洗得一干二净。

第二年,他们建了新的灯塔,但那时我已经有了一个在镇里的工作,一个妻子,一间不错的暖和的小屋,在秋夜里燃着黄色的灯火,大门紧锁,烟囱冒着白烟。至于麦克邓恩,他成为了新灯塔的主人,灯塔也按他的指示,由钢筋水泥建成。“以防万一”,他说。

新的灯塔于十一月建成。我在一个傍晚独自开车过去,把车停好,遥望着灰色的海水,听着新的雾号的鸣响,每分钟一次,两次,三次,四次,孤独地传向远方。

至于那怪兽?

它再也没回来。

“它离开了,”麦克邓恩说,“它回到了深渊。它知道了不能过分地去爱任何东西。它回到了最深的深渊,再等上一百万年。啊,可怜的东西!在那等待着,等待着,目睹着人类在这可悲的星球上诞生又灭绝,等待着,等待着。”

我坐在车里,聆听着。我看不见矗立在寂寞湾的灯塔和雾灯。我只能听见雾号,雾号,雾号。它听起来像是怪兽的呼唤。

我坐在那里,希望能开口说些什么。
Comments: 7 :: View Comments

Posted By: sandpiper @ 2016-10-10, 16:38
作者:Michael J. Sullivan
翻译:沙鹬

这里是作者的官方博客:http://riyria.blogspot.com/

dev.gif 这是一部奇幻小说!
前些日子发现这部书之后竟然久违地手不释卷……尽管目前只读到第二本,然而在我看来哪怕只有一卷也仍然是相当不错的作品,所以发现它在国内这么默默无闻的时候还真的让我有点意外。既然如此,我索性做些翻译也是好的,所以请允许我开这么个深坑……关于这方面,如果有不当之处,还请不吝赐教!

说到书的内容……其实我很想做些概览性的介绍,但又觉得这会破坏阅读体验(总是如此),所以贴出这一卷的书头,权作介绍之用:

他们杀了国王。
他们找来两个人顶罪。
他们惹错人了。

————————————————

第一章:遭窃的信件

I.

黑暗中,哈德良什么都看不真切,但却听得到他们的动静——枝杈的摩擦声,叶片的踩踏声,野草的摇曳声。他们不止一个,更不止三个,都在逐渐地围拢过来。

“全都不许动,”黑影中,一个粗犷的声音命令道。“弓箭已经瞄准你们的背啦,你们要是敢跑,就把你们从鞍子里放倒。”说话的人仍然藏在树阴底下,只能从光秃秃的树枝中隐约看到他模糊的人影。“我们要给你们的行李减减负,不会动刀动枪。照我说的做,就能保住小命,如若不然,我们就要连命一起拿啦。”

哈德良腹部一沉,意识到这是他的疏忽。他瞥了一眼旁边的罗伊斯,他驾着那匹脏兮兮的灰色母马,戴着兜帽,看不见脸。他的朋友垂着脑袋,轻轻地摇着头。哈德良不用看都知道他现在是什么表情。

“不好意思啦,”他说道。

罗伊斯没有说话,仍是不住地摇头。

挡住他们去路的是一堵树墙,都是些新砍下来的灌木,背后是一条空无一人的大道,沿途洒满了月光。雾气在凹坑和沟壑间积成水气,还有一条不知何处的细流在岩石上流淌。他们如今位于森林深处的南方古道,周遭长满了橡树和梣树,细长的枝条直追道路,和着寒冷的秋风沙沙作响。这里距离任何村镇只怕都有足足一天的路程,哈德良的印象中,也已有数个小时没有见过任何农庄了。他们形单影只,还是在荒郊野外——连尸体都不会让人发现的荒郊野外。

树叶的踩踏声愈发喧闹,直至最后一名盗贼也踏入了月光的映衬中。哈德良数了数,男人有四个,他们都没刮胡子,手中握着利剑。他们衣着粗陋,或是皮革,或是羊毛,悉数褪色、破旧、肮脏。除却他们之外,还有一个姑娘引弓搭箭,作瞄准状。她穿着长裤和靴子,打扮和其他人别无二致,头发乱成一团。每一个人都是一身斑驳的泥点,仿佛他们都是刚从土坑中睡醒。

“这俩人看上去兜里没几个子儿,”一个扁鼻子的男人说道。他是这伙人中个子最大的,比哈德良还要高上一两寸,是个壮实的糙汉,脖子粗,巴掌大。他的下嘴唇裂了口,似乎曾跟他的鼻子被同时打烂。

“但他们有一大堆装备咧,”姑娘说道,她的声音让他很是意外。她很年轻,而且——尽管很脏——很可爱,长着一张娃娃脸,但她的语调却是咄咄逼人,听来甚至有些恶毒。“看看他们装了多少东西。要那么多绳子干什么?”

哈德良不太确定她是在问自己,还是在问她的同伙。但不论如何,他都不打算回答。他本打算藉此说笑一番,但她不像是会被几句恭维和一两个微笑打动的类型。更何况,她还有支箭正对着他,她的胳膊看上去也已经开始有些疲惫。

“我要这伙计背上的大剑,”扁鼻子说道。“看着正合我的尺寸。”

“我要他的另外两把。”说话的人脸上有一道疤,将他的面部斜着分成了两块,从鼻梁一直朝上,恰好保住了他的眼睛。

姑娘把手里的箭矢对准了罗伊斯。“我要小个子的斗篷。我披这种黑斗篷会很好看。”

离哈德良最近的男人看上去最为年长,他眼窝深陷,皮肤是太阳晒成的古铜色。他上前一步,朝着哈德良的马儿伸手,一把抓住了马嚼子。“你们小心点喽。我们在这条路上杀了不少人啦。都是些不听话的傻冒儿。你们不傻,是吧?”

哈德良摇了摇头。

“好。现在放下武器,”盗贼说道。“然后下马。”

“罗伊斯,你的意见呢?”哈德良问道。“我们给他们送几个钱,这样不会有人受伤。”

罗伊斯看了过来,兜帽下的眼神引人胆寒。

“说说而已嘛,我们不想惹麻烦,对不对?”

“你哪想听我的意见,”罗伊斯说道。

“你又要倔起来了。”

沉默。

哈德良摇摇头,叹了口气。“你为什么总要把事情搞得这么难办?他们未必是坏人啊——就是没有钱嘛。你知道的,他们也是各取所需,要买面包供养他们的家人。你还吝啬这点钱吗?冬天就快来了,日子不好过啊。”他冲着盗贼们点了点头。“是吧?”

“我没家人要喂,”扁鼻子回道。“钱都拿去喝酒啦。”

“你真不配合,”哈德良说道。

“我配合你干嘛。你们俩人要么照做,要么就吃刀子。”他从腰间拔出一把长长的匕首,在手里的剑刃上磨得霍霍作响,强调着他的观点。

凄嚎的寒风掠过树林,引得枝条摇曳不停,抖落更多的树叶。金红色的叶片打着圈儿飘落,又随着劲吹的风去往了狭窄的道路。黑暗中,听得到有不知何处的猫头鹰在嚣叫。

“我们把钱分你一半,你看如何?我的那一半。这样你们也不至于损失太多。”

“我们不要一半,”拽着哈德良马儿的男人说道。“我们全要,连马也要。”

“等一下。马也要?拿几个钱还好说,偷马?你们要是被人抓住,会给吊死的。你也知道,我们一到城里,就会立刻上报。”

“你们从北边来,是么?”

“不错,昨天从梅德福特出发。”

拽马的男人点了点头。哈德良注意到他的脖子上有一块小小的红色刺青。“你看,问题就在这儿。”他的表情柔和了下来,露出一副同情的神色,然而却不过是让他显得更加吓人。“你们说不定是在去康诺拉的路上——好地方。都是店啊,都是漂漂亮亮的有钱人,而且都是生意,所以我们在这条路上就逮到了好些人,载着这样那样的好多东西,要去卖给那些有钱人。但我猜你们没去过南边,对么?北边的梅伦加尔,有安瑞思国王派兵在大路上巡逻,可麻烦啦。但在这儿,沃瑞克里,就不是那么一回事喽。”

扁鼻子凑上前来,端详着哈德良背上的大剑。

“你想说盗窃是合法的?”

“哪能呢,但埃塞莱德国王住在阿奎斯塔,那可真是远在天边哇。”

“不还有詹德维克伯爵么?不该由他替国王管理这些土地么?”

“阿切·巴伦丁?”一提到他的名字,其他的盗贼便笑出声来。“阿切才他妈的没心思管屁民的事儿,他忙着烦恼今天穿啥咧。”男人咧嘴笑道,露出一口歪歪斜斜的黄牙。“知道了就赶紧给我把剑扔了下马。然后嘛,你们大可以走到巴伦丁城堡去,敲敲老阿切的门儿,看看他会做些啥吧。”又是一阵笑声。“现在么,除非你们觉得这是最好的葬身之地——不然就赶紧照我说的做。”

“你是对的,罗伊斯,”哈德良说道,语气中透着放弃。他解开斗篷,铺在了鞍子后面。“我们是不该走大路,但老实说——我们现在可是在荒郊野外。能有多大几率碰上这种事儿?”

“就眼下被人抢劫的情况来说——我看还挺高的。”

“有那么点儿讽刺——黎伊雅被人抢啦。都快赶上好笑的程度了。”

“这不好笑。”

“你说黎伊雅?”拽着哈德良马儿的男人问道。

哈德良点了点头,除下了自己的手套,塞进了腰带里。

男人松开了他的马,向后退去。

“怎么着,威尔?”姑娘问道。“黎伊雅是啥?”

“梅伦加尔里有一对儿伙计这么称呼自己。”他朝着其他人看去,略略地放低了声音。“我在那边儿有人,记得么?他们说这俩人管自己叫黎伊雅,在梅德福特做事,还说若是我碰上他们,一定要离他们远远的。”

“那你现在觉得该怎么搞,威尔?”刀疤脸问道。

“我觉得我们最好清开树丛,让他们过去。”

“啥?凭什么?我们五个人,他们才两个,”扁鼻子指明道。

“但他们是黎伊雅。”

“那又怎地?”

“我在北边的同僚——他们不是傻子,而且他们叫所有人都不要对这两人动手。我这些同僚可不是怂蛋。如果他们说不要招惹,那肯定有他们的理由。”

扁鼻子瞪起了眼睛,端详着他们。“好吧,但你怎么知道这两人就是他们?就凭一两句话?”

威尔朝着哈德良点了点头。“你看看他带着的剑。要是有人带着一把——他也许会使,也许不会。要是有人带着两把——他未必真的懂剑,但他想让别人以为他懂。但要是有人带着三把——那可是沉家伙。没人会背着这么多铁疙瘩闲晃,除非他靠这些家伙吃饭。”

哈德良从左右两侧拔出双剑,动作优雅。他反手握住其中一把,让它贴着手掌转了一圈。“这把我得换个柄。又开始磨损了。”他看向威尔。“我们继续么?我觉得你们是要来抢我们呢。”

盗贼们面面相觑,不知如何是好。

“威尔?”姑娘问道。她仍然大张着弓,但却毋庸置疑没有原先那么自信。

“我们把树丛清开,让他们过去吧,”威尔说道。

“你确定?”哈德良问道。“烂鼻子的那位好哥哥似乎铁了心要弄把剑呢。”

“我不要了,”扁鼻子说道,他抬起头看了看哈德良的剑刃,寒铁如镜,月华流光。

“好吧,如果你确定如此。”

五个人都点了点头,哈德良也随之收剑入鞘。

威尔将他的剑插进地里,招呼着其他几个人,利索地清理起了树枝堆成的路障。

“知道么,你们做得太不对了,”罗伊斯对他们说道。

盗贼闻言停手,抬起头来,面有忧色。

罗伊斯摇了摇头。“我不是说树丛——我说抢劫。你们选的地方不错。这点我承认。但你们应该从两个方向包围我们。”

“而且,威廉——你叫威廉,是么?”哈德良问道。

男人打了个寒战,点了点头。

“好,威廉,大多数人都是右撇子,所以包围他的人就应该从左边来。这样就会置我们于不利,必须绕过自己的身体才能砍到你们。拿弓的人应该站在我们的右边。”

“而且为什么只有一把弓?”罗伊斯问道。“她这样只射得中我们两者之一而已。”

“只怕连这都做不到,”哈德良说道。“你注意到她张弓多久了吗?除非她特别强壮——我看未必——要不然那就是把木头做的土弓,根本射不出几尺远。她只负责做做样子。我看她都未必真的射过箭。”

“我射过,”姑娘说道。“我准头好着呢。”

哈德良朝着她摇了摇头,露出微笑。“你的食指都按在箭杆上啦,亲爱的。你一松手,箭羽就会擦过你的手指,我不知道箭会飞哪儿去,但肯定不会去你瞄的位置。”

罗伊斯点了点头。“买几把弩吧。下次藏好一点,对准你们目标的胸口,直接来上几箭。何必扯这么多废话,傻里傻气。”

“罗伊斯!”哈德良喝止道。

“怎么?你不是一直要我对别人好一点么。我在助人为乐呢。”

“别听他的。如果你们想听建议,那下次就造个好一点的路障。”

“是了,下次最好弄棵树来,”罗伊斯说道。他朝着树枝摆了摆手,补充道,“这太可怜人了。而且,玛利伯尔在上啊,蒙住你们的脸吧。沃瑞克是个王国,没那么大地方,别人很容易记住你们的脸。巴伦丁是不太可能费神来找你们几个小路匪的麻烦,但没准你们哪天走进酒馆的时候,脊背上就得让人给抵住一把匕首。”罗伊斯转向威廉。“你是深红之手的人,对么?”

威尔吓了一跳。“没人提这事儿啊。”他拉拽树枝的手停在了半路。

“提都不用提。红手要他们公会的所有成员都在脖子上纹那个蠢刺青。”罗伊斯转向哈德良。“纹身的目的本来是打算让他们看上去像个狠角色,但这只不过是让别人轻而易举地就能知道他们是盗贼,一辈子都是。在所有人身上画个红手,这主意不管什么时候听着都蠢得要命。”

“那刺青是只手?”哈德良问道。“我还以为是只红公鸡。你这么一说,倒确实更像只手。”

罗伊斯回头看向威尔,把脑袋歪向一边。“是有点像只鸡。”

威尔伸手盖住了自己的脖子。

清理完所有的树枝后,威廉问道,“说真的,你们究竟是什么人?黎伊雅又到底是干什么的?红手从没跟我说过。他们只让我们保持距离。”

“我们可没什么特别的,”哈德良回道。“一伙旅人,喜欢乘着秋夜的凉爽骑行罢了。”

“但认真地说,”罗伊斯说道。“如果你们还打算继续做这一行,那你们最好按我们刚才说的做。毕竟,我们接受了你们的建议呢。”

“什么建议?”

罗伊斯轻踢马儿一脚,再度沿着道路走去。“我们要去拜访詹德维克伯爵,不过别担心——我们不会提起你们的。”


II.
阿奇博德·巴伦丁手里拿着十五封偷来的信件,仿佛掌握着整个世界。每一张羊皮纸上的文字都是精心写就,笔迹秀丽而雅致。他看得出来,写信的人深信这些话语情真意切,足以传达其中蕴藏的美好真心,然而对他来说却不过是些不着边际的胡言乱语。尽管如此,就这些信件拥有着莫大的价值这一点,阿奇博德倒是跟写信人想法一致。他呷一口白兰地,闭上眼睛,兀自微笑起来。

“大人?”

阿奇博德不耐烦地睁开双眼,对着他的亲兵长怒目而视。“搞什么,布鲁斯?”

“侯爵已经到了,阁下。”

阿奇博德的微笑再度浮现。他小心地将信件重新叠好,用一根蓝色的缎带打成一捆,这才把它们放回了保险箱。他将沉重的铁门关好,锁子套牢,又用力拽了两下,确定插销结实无误之后,这才朝着楼下走去,准备迎接他的来客。

刚一到达门廊,阿奇博德便发现威托·兰纳柯林正在前厅中等候。他于是暂留一步,端详起了这个来回踱步的老头子,给了他一丝满足的感觉。尽管侯爵的爵位压他一头,阿奇博德却从未将他放在眼里。或许威托往日高不可攀、咄咄逼人,乃至于英勇无匹,但他的傲骨早已在灰发和驼背的掩盖下没了踪影。

“您需要些饮品润润喉吗,大人?”管家拘谨地鞠了一躬,畏首畏尾地向侯爵发问。

“不要,我要去把你家伯爵给我找来,”他命令道。“不然要我自己去找他么?”

管家有些不知如何是好。“我向您保证,阁下,我家主人马上就到。”佣人再次鞠躬,继而慌忙地退去,消失在了房间远端的屋门之后。

“侯爵!”阿奇博德一进门,便亲切地高声招呼起来。“真高兴你能来——而且还这么快。”

“你很惊讶嘛。”威托回道,话里带着刺儿。他摆了摆手里捏得皱皱巴巴的羊皮纸,继续说道,“你带这种话给我,还以为我会耽搁?快把事情给我说清楚,阿切。”

阿切。阿奇博德没有表露出他对这个儿时昵称的鄙夷。这个名字是死去的母亲给他起的,更是他永远不能原谅母亲的数个原因之一。他年轻的时候,从骑士到侍从的每一个人都曾经这么叫过他,而阿奇博德也每次都觉得这随便的称呼有损他的身份。所以他一当上伯爵,就立刻在詹德维克颁布了一条律法,让所有再这么称呼他的人通通吃饱了鞭子。阿奇博德当然没有那么大权力去强迫侯爵服从他的条令;他敢肯定威托是故意这么叫他的。

“请多少先冷静一下,威托。”

“少跟我说什么冷静!”侯爵的喊声在石质的大厅中激起了阵阵的回音。他上前一步,脸庞距离阿奇博德不过咫尺之遥,直勾勾地盯着他的眼睛。“你说我女儿阿莲达大难临头,还说你有证据。快说——她究竟是不是身陷危机?”

“当然是,”伯爵镇定地回答道。“但确切地说,并不会马上发生。没人要搞什么绑架案,也没有人要谋杀她——如果你担心的是这些问题的话。”

“那你给我送的是什么信?要是你害我差点毁掉自己的车队,到头来却是白担心一场,我保证你会后悔——”

阿奇博德举起了他的手,把眼前的威胁拦在了半路。“放心,威托,你没有白忙活。但话说回来,在我们更进一步地讨论这个话题之前,不如先到我的书房里休息一下,也好让我给你看看我说的证据。”

威托狠狠地瞪着他,但到底还是颔首同意了。

两人于是走出门廊,经过宽敞的接待厅,径直穿过房门,朝着城堡的居住区走去。他们在各式各样的门廊和楼梯间辗转,而周遭的环境也随之颇为显著地变化着。正门处的墙壁由式样精美的壁毯和蚀刻而成的石像竞相装点,地面更是由悉心雕琢的大理石铺设而成;然而正门之外却并无任何撼动人心的陈设可言,徒余一座座石墙空落的沉闷景象。

就建筑上的评判标准而言——或者随便什么标准——巴伦丁城堡都是平平无奇,没有任何出彩的地方。从未有哪位伟大的国王或是英雄曾经在此栖身,这里也没有诞生过什么传奇、战斗或是灵异故事,有的只是平庸和流俗的十足典范。

在这眼花缭乱的过道中来往了数分钟后,阿奇博德便停在了一扇铸铁大门面前。合页上的螺栓大得触目惊心,牢牢地把守着大门,一眼望去看不到门闩和把手。大门的两侧皆有两名高大的守卫,他们手握长戟,披挂着厚实的铠甲。阿奇博德走近时,其中一人便对着大门敲了三下。一扇小小的窥窗继而打开,片刻之后,解除门闩的尖利声响便霎时在整座厅堂中接连回荡。大门而后打开,金属合页也随之发出震耳欲聋的嘶叫。

威托举起手来,掩住他的耳朵。“玛神在上啊!你的手下是故意的吧!”

“哪有,”阿奇博德回道。“这是灰塔的入口,通往我的私人书房。这里是我的避风港,所以我要城堡里的任何一处都能听到这扇门打开的动静,我也确实听得到。”

布鲁斯站在门后,向两人庄重地深鞠一躬。他在身前举着一盏提灯,护送两人走上一段宽阔的螺旋阶梯。攀塔的路程走到一半时,威托的步伐便慢了下来,呼吸中也显出了几分吃力。

阿奇博德于是彬彬有礼地停下了脚步。“容我致歉,这段路程太长了。爬过几百几千次这些楼梯之后,我已经习惯成自然了。伯爵还是我父亲那会儿,我经常会躲到这里来。从来都没人愿意来这里,费时又费力。毕竟,这里的高度虽说没有厄尔法翁的王冠塔那么宏伟,好歹也还是城堡里最高的塔楼。”

“就没人爬上来看看风景么?”威托推想道。

伯爵轻笑一声。“你大可以这么想,但这座塔可没窗子,所以才是完美的私人书房。我还在这加装了不少大门,以便把守我所珍重的东西。”

到达楼梯顶端后,他们便又迎上了一扇门。阿奇博德从衣袋里取出一把大钥匙,打开门锁,礼貌地示意伯爵进屋。布鲁斯关上了房门,回到书房外站岗。

这个圆形的房间十分宽敞,天花板也是同样。陈设的家具十分稀少:一张凌乱不堪的大书桌、小小壁炉旁的两把衬垫椅,再就是两人之间那张精致的小桌子。只有一张铜网的壁炉烧着火,将书房的大半照亮;剩余的区域则由墙壁上林立的蜡烛提供光源,让整个房间中遍布着蜂蜜和扫萼蕃沁人心脾的芳香。

眼见威托盯着桌上胡乱堆满的各式卷轴和地图不放,阿奇博德微微一笑。“别担心,阁下,早在你到访前,我就把侵略世界的计划书收起来了。来,请坐吧。”阿奇博德朝着壁炉旁的两张椅子示意。“先让我准备两杯东西润润喉,你也好安顿一下旅途的劳累。”

年长的侯爵沉着脸嘟哝了起来。“够多参观和客套了。我们都到这了,就开门见山一点,给我把事情说清楚。”

这些话,阿奇博德都只是当作了耳旁风。马上都要开始讨赏了,他当然有悠然自得的余地,所以他一直等到了侯爵就座为止。

“你知道吧?我向你的女儿阿莲达表示过好感。”阿奇博德问道,拿着两杯白兰地走向了书桌。

“知道,她跟我说过。”

“她跟没跟你提过拒绝我求爱的原因?”

“她不喜欢你。”

“她都不了解我,”阿奇博德竖起一根手指,如是地反驳道。

“阿切,你叫我来就是为了说这个?”

“侯爵啊,如果你肯用合适的叫法来称呼我,我会十分感激。自从家父过世,由我担任伯爵之后,再用那个名字叫我就很不合适了。至于你的问题,我的回答是,的确和正题有关。你也知道,我是詹德维克的第十二任伯爵;诚然,这不是什么庞大的家业,巴伦丁也不是最具影响力的家族,但这并不意味着我就一无是处。我手底下有五个村和十二个屯,囊括瑟翁高地这一战略要址。现在归我统帅的亲兵长数目是六十有余,每一位都身经百战。效忠于我的骑士数目是二十名——包括恩顿爵士和布雷克顿爵士,只怕当世再无其他骑士可以跟他们两人争锋。整个沃瑞克都在垂涎詹德维克的毛皮出口,还有人说下次夏律节大赛会在这里举办,就在你踏进城堡时经过的那片草地上。”

“好吧,阿切——我是说阿奇博德——我对詹德维克的世界地位清楚得很,我也不是来这边听你上贸易课的。”

“那不知道你是否清楚,埃塞莱德国王的外甥曾不止一次地在这里用餐?是否清楚罗榭勒公爵及其夫人曾经提出要求,希望在今年的冬潮节跟我共进晚餐?”

“阿奇博德,你这样很没意思。你到底想说什么?”

眼见侯爵毫无动摇,阿奇博德不由得蹙起了眉。他拿起两杯白兰地,将其中一杯递给威托,坐在了另外一把椅子上。他停顿片刻,呷了一口杯中的酒液。

“我想说的是。看看我的地位、名望,我似锦的前程——阿莲达没有任何理由拒绝我。毋庸置疑,问题不会出在我的长相上。我年轻、英俊,穿的都是最好的进口货,用的都是天底下最贵的真丝。何况她剩下的那些追求者不是老头就是胖子,要么就是秃子——有的甚至兼而有之。”

“她关心的可未必只有外表和财富,”威托回道。“不是所有女人都只考虑政治和权力。阿莲达是那种率性而为的姑娘。”

“但她非得率她父亲的念想不可。不是吗?”

“我不懂你的意思。”

“你如果叫她嫁给我,她就得嫁给我。你大可以命令她。”

“所以说,你费这些功夫把我叫到这里就是为了这个?那真不好意思,阿奇博德,你在浪费我们两个的时间。我决不会逼她嫁给任何人,更不要说是你,她会为此恨我一辈子。不管我女儿的婚姻能带来什么政治效应,我更在乎的都是她的感受。很不凑巧,我就是这么宠她,我膝下的儿女里,她是最能让我快乐的那一个。”

阿奇博德又呷了一口白兰地,思索起了威托的这一席话,并继而决定换个方向来切入正题。“如果一切都是为了她好呢?如果都是为了让她免于大难临头呢?”

“你打着警告危险的幌子把我弄来这里,现在是终于准备解释这一切的来龙去脉,还是准备看看老狗是不是还有几颗牙?”

阿奇博德将这苍白的威胁置若罔闻。“阿莲达接连拒绝我求爱的时候,我就认定事出有因。她根本没理由那么坚决。我人脉这么通达,又前途无量。于是我就找出了你女儿拒绝我的真正缘由——她已经有别人了。她正在恋爱,而且是地下恋情。”

“难以信服,”威托说道。“她可什么都没跟我说过。她若是看上了谁,一定会告诉我。”

“她对你保密一点也不让人惊讶。她很清楚这段恋情会给你们的家族蒙羞,根本羞于启齿。她讨好的男人不过是一介布衣,血管里连一滴贵族的血脉都不曾有过。”

“一派胡言!”

“你放心,不是胡言。真正的问题恐怕还在后面呢。这人名叫戴甘·冈特,你想必有所耳闻吧?他可有名得很呢,是戴苟斯国民主义运动的领袖。你也知道,他带着一帮草民把南边搅和得群情激愤,这群人一心只想把贵族杀个精光,建立自己的统治。他和你女儿就在修道院附近的温德米尔幽会。你一出远门,或是忙于城邦的事务时,他们就出来见面。”

“荒谬至极。我女儿不会——”

“你不还有个儿子在那儿吗?”阿奇博德问道。“修道院里,我是说。他是个僧侣,没错吧?”

威托点头。“我三儿子,迈隆。”

“或许就是他从中撮合呢。我听来的消息里说,你家儿子可是聪明得很,说不定就是他给自己心爱的姐姐筹划了这一切,负责两人的联络。这可太不好了,威托。你看,你这位侯爵的君主是位坚定的帝国派,你女儿却跟一个造反派卿卿我我,还在王族派的梅伦加尔王国里会面,而这一切的幕后推手更是你的亲生儿子。大把的人都会觉得这是你们一家子串通一气。若是给埃塞莱德国王知道了,他又会怎么想?你是很忠诚没错,我们都心知肚明,可其他人就未必这么想了。就算我知道这不过是你家姑娘一时天真、爱错了人,她的不端可还是会让你们一家的美名毁于一旦啊。”

“你真是疯了,”威托回击道。“迈隆去修道院时还不到四岁,阿莲达不曾跟他说过一句话。你大费周章扯出这些谎言,不过是想让我对阿莲达施压,逼她嫁给你。你的动机我一清二楚,你根本不在乎她,单是觊觎她的嫁妆。你真正想要的是瑞斓谷,是这块刚好跟你的地盘两相毗邻的土地。没错,不仅如此,你还想跟地位更高的家族结为姻亲,让自己有机会在社交和政治两方面的地位青云直上。你真是可悲。”

“真可悲,是吧?”阿奇博德放下了手中的杯子,从衬衫中拿出一串银链,上面悬着一把钥匙。他站起身来,走到房间另一端的一面壁毯前;壁毯上画着一位考雷因亲王,他骑着马,行将劫走一位金发的贵族女郎。阿奇博德拉开壁毯,露出藏在后面的保险箱。他插入钥匙,打开了那扇小小的金属门。

“我有一整叠你那位宝贝女儿的亲笔信,足以证明我所言非虚。信上所写的,皆是她对那位引人作呕的造反贱民矢志不渝的爱。”

“你从哪儿弄到这些信的?”

“偷来的。为了摸清情敌的身份,我派人监视了她。发现她寄出的书信途经修道院后,我便设法截获了这些信件。”阿奇博德从保险箱中拿出一叠羊皮纸,扔在了威托的大腿上。“来!”他趾高气扬地宣布道。“读读你女儿的所作所为,再来决定你的女儿是不是嫁给我更好一些。”

阿奇博德坐回原位,耀武扬威地端起了他的那杯白兰地。是他赢了。威托·兰纳柯林,伟大的葛楼斯顿侯爵,会把他的女儿嫁给他,以免让自己的政治生涯就此终结。侯爵已是别无选择。若是风声传到埃瑟莱德国王耳中,威托便可能被以叛国的罪名论处。但凡是帝国派的国王,都会要求臣下的贵族清楚地表明各自的政治倾向,以及对教廷的忠心。尽管阿奇博德并不当真觉得威托倾向于王族派或者国民派,但只要他的行为有所不端,那便足以招致国王的不满。再怎么说,威托只要一步不慎,只怕就会使得整个兰纳柯林家族都再也抬不起头来。侯爵唯一明智的选择,便只有同意这桩婚事了。

边境的土地终归是要成为阿奇博德的囊中物了,或许终有一天,连整个边陲都会掌握在他的手中。一旦手握詹德维克和葛楼斯顿,他在宫廷中的权力便足以和罗榭勒公爵平起平坐了。

阿奇博德睥睨着这位灰发的老人,睥睨着他质地良好的旅行衣装,心中甚至都觉得有些对不起他。很久以前,侯爵曾以他的机敏和刚毅而声名桌著,连他的头衔都是由此而来。侯爵并不单纯只是个贵族,更不单纯只是伯爵那样的地方领主。威托的责任乃是为国王驻守边疆。这是相当庄重的职责,能够堪此大任的人物,非但必须是位能力超群的领导者,更要饱尝过战火的洗礼,永远不会有所懈怠。然而今时不同往日,沃瑞克的边境如今已是和平安宁,这位伟大的卫士也由是愈发地自鸣得意,身上的力量也已因荒废而孱弱不堪。

趁着威托打开信件的时分,阿奇博德便即思忖起了他的前程。侯爵说得很对,他就是为了土地才去追求他女儿的。不可否认,阿莲达也确实很有魅力,而一想到要把她赶上自己的卧榻,个中的乐趣就不是一两句愉快与否能够轻易言说的了。

“阿奇博德,你在开玩笑么?”威托问道。

还流连在思绪中的阿奇博德吓了一跳,放下了手中的杯子。“什么意思?”

“这些羊皮纸都是白纸。”

“什么?你瞎吗?这都是——”看到侯爵手中空无一字的纸页时,阿奇博德怔住了。他抓起一把书信撕了开来,得到的却是又一堆白纸。“不可能啊!”

“说不定这些都是用隐形墨水写的呢?”威托笑道。

“不……我不明白……这根本都不是原来的那些羊皮纸!”阿奇博德再次检查起了保险箱,却是一无所获,他的混乱也继而转变成了恐慌。他粗暴地扯开房门,焦急地喊来了布鲁斯。亲兵长连忙进门,手中握着他的剑。“我放在保险箱里的信怎么了?”阿奇博德对着士兵吼道。

“我——我不知道,大人,”布鲁斯回道。他收剑入鞘,在伯爵面前立正站好。

“你什么意思,不知道?你一晚上都在翘岗?”

“不,阁下,当然没有。”

“有谁——不管是谁——在我离开的时候进我的书房没有?”

“没有,大人,这是不可能的;钥匙只有您拿着。”

“玛利伯尔在上啊,那么信能到哪去?我亲自把它们放进去的。侯爵抵达的时候我还在读它们。我只不过走开了几分钟而已。它们怎么可能凭空消失掉?”

阿奇博德的大脑飞速运转起来。他没多久前还亲手拿着那些信,把它们锁进了保险箱。他很确信这里没有任何问题。

它们到底去哪了?

威托饮尽了杯中的酒水,而后站起了身。“阿切,你不介意的话,我就先走一步。你真能浪费我的时间。”

“威托,你等等。别走。真的有信。我保证,我真的有信!”

“你当然有了,阿切。下次再想敲我竹杠的时候,我建议你最好装腔作势得像话一点。”他横穿过房间,走出屋门,继而便消失在了阶梯中。

“你还是再想想我说的吧,威托,”阿奇博德在他身后喊道。“我会把信找回来的,我会的!我要把信拿到阿奎斯塔去!我要亲手把信呈给王廷!”

“您想让我怎么办,大人?”布鲁斯问道。

“给我等着,呆子。我得想想。”阿奇博德转而开始绕着房间踱步,用那双颤抖的手搔抓着自己的头发。他再一次地仔细地检查起了那些信件;而它们的质地也的确和他先前读过的那些信件有着相当微小的差别。

阿奇博德于是也顾不得什么放信的保险箱,转而把自己的抽屉全部拉开,乱翻起了书桌上堆起的羊皮卷。又给自己倒了一杯饮品后,他直穿过房间,一把扯下火炉上的铜网,拿烧火棍拨弄起了其中的灰烬,以期寻找到几块羊皮纸的残骸,从中搜刮出一星半点丑闻的痕迹。失望之余,他继而便将手中的白纸投进了火中。他一口喝光了杯中的酒水,瘫在了旁边的一把椅子上。

“刚刚还在这呢,”阿奇博德满是茫然地说道。然而,解决的方法很快便在他的头脑中逐渐成型。“布鲁斯,一定是有人把信偷走了。这些毛贼不可能跑远,我要你给我翻遍整个城堡。谁都不要给我放走。城里的人不行,守卫也不行——谁都别想出去。给我搜光每一个人!”

“马上办,大人,”布鲁斯回道,而后停顿了一下。“那侯爵呢,大人?我要把他也拦下吗?”

“用不着,你这蠢材,他当然没拿信。”

阿奇博德凝望着火焰,听着布鲁斯踏着阶梯的脚步声逐渐远去。如今他孤身一人,陪伴在侧的却只有烈火的噼啪声,以及数之不尽的不解之谜。他绞尽脑汁地思考,却无论如何都不能想通那些毛贼偷信的手法。

“阁下?”管家拘谨的声音将他从思绪中唤回,阿奇博德转而望向了他从敞开的大门中探出的脑袋,使得这位管家不免在说话前又做了一次深呼吸。“大人,我并非存心惊扰您,但庭院中现在有一些问题需要您的注意。”

“什么东西?”阿奇博德吼道。

“是这样,大人,没有人告知我具体的细节,但似乎是侯爵的问题,阁下。我被派来请您出面——谦卑地请您出面。”

阿奇博德走下阶梯,疑心老头子是不是猝死在了他家门前,那可就真的是不好收拾了。当他到达庭院时,看到的侯爵尽管生龙活虎,却也是火冒三丈。

“姓巴伦丁的,你把我的马车弄哪去了?”

“你的什么?”

布鲁斯靠近阿奇博德,站在了他的身边。“大人,”他冲着伯爵的耳朵悄声说道。“好像伯爵的车马都不见了,阁下。”

阿奇博德向着伯爵的方向竖起一根手指,高声回道:“我马上就来,威托。”他继而转向布鲁斯,小声说道,“不见了?怎么可能?”

“我也不知道,阁下,但您看,门卫报告说侯爵和他的车夫,或者说是他们以为是侯爵和车夫的人,刚刚从前门离开。”

一阵不适骤然袭来,阿奇博德却只得背过身去,对着火冒三丈的侯爵大人殷切地招呼起来。
Comments: 38 :: View Comments

Posted By: Shrewd @ 2016-09-02, 19:49
  今天,我们在观看马戏团或情景喜剧中搞笑的小丑表演,或观看《自杀小队》时,很难会把滑稽的小丑形象与古代神话联系在一起。然而追溯它的起源,我们却发现它与古罗马狂欢节中黑暗可怕的成分有千丝万缕的联系。

  许多民族曾经每年都有一个放肆的狂欢时期,此时人们抛开日常约束,全民都纵情地寻欢作乐。这种突然爆发常与播种与收获的农业季节有关,大多是一年农耕结束的时候。欧洲所有此类节日中最著名的一个就是古罗马的萨杜纳里亚(Saturnalia)——意为农神节,大约在罗马历每年的最后一个月里(12月17号)是纪念农神萨杜恩的节日。

  萨杜恩(Saturn)是罗马神话中负责播种与收获的农神。在一些传说里,祂被认为是朱庇特的父亲(相当于希腊神祇克洛诺斯)。在被其子打败篡位后,萨杜恩逃到了意大利半岛的拉丁姆,以人类的身份活在世上,受到了双面神亚努斯(Janus,一月的词根)的庇护,后来成了拉丁姆的国王。在很古老的岁月里,萨杜恩把山中零落的猎户聚集起来,教他们种地,给他们制定法律。此时大地物产富饶,人们安居乐业,众人平等,一切财富为人们共有,没有贪婪与纷争,没有战争与罪恶。有一天,平静的好日子突然结束了,这位仁君神秘消失,黄金时代也随之结束。


(在一些传说里,萨杜恩被认为是朱庇特的父亲(相当于希腊神祇克洛诺斯)。在被其子打败篡位后,萨杜恩逃到了意大利半岛的拉丁姆,以人类的身份活在世上,受到了双面神亚努斯(Janus,一月的词根)的庇护,后来成了拉丁姆的国王)

  但是,遥远后世的人民一直在怀念萨杜恩,意大利境内的许多山峦、高地都以祂的名字命名,还立了许多祭坛来供奉。不过,关于他统治的光辉传说,后来不知怎么地竟蒙上了一层阴影。《斯巴达克斯》里恺撒说,萨杜恩是地狱里的神,因此他的祭坛要用人牲的鲜血来祭祀。在古代作家流传下来的关于农神节的描述中,对这位神的这个阴暗面却没有留下什么痕迹,甚至毫无痕迹。宴会、饮酒、种种疯狂的寻欢作乐,似乎特别标志出这个古代狂欢节的特点,这些节日在古罗马的街道上、公共场合和住宅中进行,一连七天,从12月17日到23日。

  但是,节日中最引人注意的特点,使古代自己都觉得最惊人的,莫过于允许奴隶放任自由。自由民和奴隶阶级之间的区分暂时废除了。奴隶可以骂他们的主人,可以像自由民一样醉酒,可以和他们同坐一起吃饭,奴隶有些行动在任何别的时候可能使他遭受鞭打、囚禁或死刑,但这时连骂都不骂一句。不仅如此,主人实际和他们的奴隶互换位置,主人在吃饭时伺候他们,要等奴隶吃饱喝足之后,才清理饭桌给主人摆饭菜吃喝。农神节期间,每个家庭暂时成了一个小型共和国,国家的最高权力由奴隶执掌。自由民们也可以抓阄,中阄的人暂时拥有国王的称号,对他的临时臣民发布一些带有玩笑取闹性质的号令,比如命令某人陪酒,某人唱歌,某人跳舞,某人和吹笛女调笑助兴等等。

  人们认为萨图纳里亚这个节日允许奴隶自由是模仿萨杜恩时代的社会状态,是那个快乐君主统治的暂时复活,而那个主持吃喝笑闹的假王则可能是代表萨杜恩本人的。据一些古罗马的文献记载,罗马士兵每年也过农神节,节日前三十天,他们用抽签的方法从士兵中选出一个年轻的帅小伙,学萨杜恩的样子穿上王袍,然后由一群士兵陪着上街游逛,放纵情欲,为所欲为,不论其行为有多么卑鄙可耻。他享受王权统治期间虽然很快活,但到了农神节那一天,他就在萨杜恩的祭坛上自杀。

  公元303年,有一个信基督教的士兵达修斯抽中此签,但他不愿意扮演异教的神,他的上级巴瑟斯又是威胁又是利诱,始终没有动摇他坚定意志,于是将其斩首,后来达修斯被封为圣徒,他的遗骸被安葬在意大利安科纳海边的一座教堂里。这个故事佐证了古罗马诗人贺拉斯和历史学者塔西陀著作中关于农神节的描述,并让农神节假王的任务有了新的认知。他的角色并非只是丑角或只顾把宴会搞得热热闹闹的滑稽逗乐的司仪那么简单,还有一长串类似的,可笑又悲催的人物,他们在其他年代,其他地方,也带着仿制的王冠,带着帝王的披肩,在短短几天的一阵玩乐之后,年纪轻轻地就横死了。

  这种把假王作为神的代表给予处死的风俗,不太可能是从指定假王主持节日宴会的做法中产生,反过来倒更有可能,这样就意味着,在更早更野蛮年代的古意大利,凡是流行崇拜萨杜恩的地方,都会在一年的某个时间内选出一人假扮萨杜恩,享有萨杜恩的一切传统权力,然后以善神萨杜恩的身份死去,或是自杀,又假手他人死于刀剑、火焚或绞刑。这个神为人世献出自己的生命,于是后人便用活人献祭而供奉他。

  这种做法在古代民族之林并不是孤立的现象。中美洲地区有一种传统观念,身着神灵服装的人会变得异常神圣,人们就认为他们本身就暂时是神灵。这为一些怪诞的、悲惨的祭祀仪式提供了理论依据。

  在阿兹特克时期,这一观念与人祭崇拜联系起来。在历法中祭祀“冒烟的魔镜神”特斯卡特利波卡神的那个月中,这一观念发展到极致:月底,一名年轻漂亮的青年男子会被挑选出来,接下来的一整年中,他都会被尊为神的化身。这位神一开始就在神之国度中引发战争、邪恶和淫亵。当他在地球上行走时,祂加速了邪恶和罪行,也带来了痛苦和灾难。但祂又是一位伟大的神,即可创造,也可以毁灭。“他万能又无敌,”阿兹特克人说,“他既可以给人财富、快乐和长寿,又会偶然把这一切都毁灭。”


  白天,这位神的化身会在神庙中受人监护,并学习舞蹈和吹笛子。晚上,他由8个年轻武士陪伴,这8个武士既是他的侍者,也是防止他逃跑的卫兵。当“神”走过大街小巷时,他吹响自己的笛子,并使自己胳膊上,腿上的镯子嘎嘎作响。人们听到声音后会奔走相告:神正在走过。有些人还会将生病的孩子带出来向神祈祷,希望孩子们尽早康复。

  当供奉特斯卡特利波卡神的那个月又来临时,这种仪式达到了最高潮。在最后的20天里,阿兹特克国王光临神庙给这个年轻人穿上神的华丽服装。他还会授予“神”4个妻子,她们被认为代表了重要的女神。月底前5天,国王暂时退位,以表示活着的特斯卡特利波卡神在城中处于统治地位。

  到了最后一天,这个年轻人被带到神庙顶部,与他的妻子们一一告别,之后便爬上金字塔。当到达顶部后,他就被杀祭。他的身体会被送到地面,用在盛宴中供国王和贵族们享用。宾客中包括一个年轻人,他就是这天早些时选出来的“新神”,也就是明年这个时候的“主菜”。

  随着时间推移,文明的发展减轻了这个风俗中残酷的成分,把它变成了古代作家笔下描写的那种比较无害的形式,直到变成我们现在看到的意大利狂欢节的雏形。在意大利、法国、西班牙,也就是一切罗马影响过的国家里,狂欢节的一个突出特点就是有一个滑稽人物扮作节日的化身,经过一段放纵腐化的生涯,然后便假装被大众杀死。

  如果研究属实,那么这个丑角不是别人,正是老萨图纳里亚王萨杜恩的继承者,就是继承那个狂欢宴会的主持人,那个扮作假王的人,欢宴过后以神的身份死去。莎翁喜剧《第十二夜》里中世纪的傻瓜主教、愚蠢的修道院长,或是圣诞节的混乱之王、胡闹老爷,都是同一类的人物。



  这个逗趣欢乐的角色影响了16世纪到18世纪中叶意大利中的头戴面具和身穿各色彩衣的角色丑角哈利奎因(Harlequin),那个身穿彩衣,脸上抹着油彩的小丑正是来源于此。受小丑影响的哈琳·奎泽尔以哈利奎因(Harlequin)的名字命名自己为哈莉奎茵(Harley Quinn) ,由此诞生了 DC世界中最可爱可怕又可怜的迷人女反派。

Comments: 5 :: View Comments

Posted By: edelweiss @ 2016-08-16, 13:12
本文译自《三島由紀夫と能楽》的第七章,作者田村景子。
请与译者翻译的能剧《熊野》一起阅读:https://www.douban.com/note/576380489/

  ● 从能剧《熊野》到《平家物语》

  能剧《熊野》以平宗盛的独白开场。对于以母亲生病为由不断请求准假的爱妾熊野,宗盛的反应却是“唯在今春,吾欲以其为赏花之伴”。然后,朝颜给熊野带来了她母亲的一封信,内容是母亲病危,希望女儿回乡看望;熊野再度向宗盛请假,但宗盛依然不准,还命令她随自己去赏花。一行人从繁华的京都出发,途经各种名胜古迹、寺院神社,往樱花盛开的东山而去【原注】。但即使是途中满开的樱花,也不能慰藉熊野的心情。抵达清水寺后,熊野躲到佛堂里,为母亲的健康祈祷,但却被强行拉到酒宴上,被命令作舞。

  此时雨打樱花,纷纷散落。在这样的景色中,熊野感到“这阵雨真无心肝,然古歌亦言……无人不惜此,故泪化雨溅”,遂作歌一首:“今当何以处,心愁思故家。京都惜春景,东国将落花”,终于打动了宗盛。熊野赞颂清水观音的功德,然后就从东山直接返乡了。绚烂的京都春色与主角熊野的悲伤在落花中化作歌舞,最终引出熊野得以归乡的喜悦。因此,能剧《熊野》作为华美的“春季主题”能剧,广受欢迎。在熊野欢谢“清水观音施拯”时,作品用美满结局宣扬佛教的意图也显而易见。

  以上就是能剧《熊野》的主要情节。这个故事取材于话本版《平家物语》第十卷的《海道下》一节中的“池田宿驿”故事。各种版本的《平家物语》均将这个故事的女主角记为“宿驿长者熊野之女,侍从”,伊藤正义也在《新潮日本古典集成 谣曲集 下》的“各曲解题”中指出:「《熊野》的作者虽然是基于话本版创作的,但将『侍从』改为『熊野』,应是为了表示熊野得假是受熊野权现的恩惠,从而进行了一定程度的改编。」

  《海道下》讲述的,是在坛之浦会战后,先前在一之谷会战中战败被俘的本三位中将平重衡(宗盛、知盛之弟)作为苟延残喘的败军之将被押往镰仓的过程。在从京都往东国去的路上,有一座池田宿驿,它地处东海道要地,位于今日的静冈县磐田市,面向天龙川的渡口。平重衡被押解到此时,宿驿的女主人出于同情,向他咏歌一首,大意是“没想到会在这里遇到您,京都是多么令人怀念啊”。得知这样的乡野鄙地竟有如此优雅之人,重衡感到惊讶;对方告诉他,自己曾是他的兄长宗盛的恋人。宗盛年轻时,曾任此地的国司,从而将她召至京都,备加宠爱。但她放不下留在池田宿驿的老母亲,告假还乡,只留下一首和歌“今当何以处……”,从此被称为东海道第一的和歌名手。

  当时,平重衡即将遭到斩首的命运,不用说,平宗盛此时也是一样。在平氏灭亡的大背景下,面临死亡的平重衡遇到了同样面临死亡的兄长宗盛的旧日恋人,在他眼前,已经不可能归去的京都那荣华的片鳞与眼前的女性重合了一瞬间,然后就永远地离去了——这就是《海道下》的内容。

  由于平清盛的长子重盛死在清盛之前,次子基盛夭折,因此在平清盛死后,三子宗盛就成了平家之主。但在九条兼实的《玉叶》和《平家物语》的记载中,平宗盛这位平家之主作为政治家,被后白河法皇的计谋玩弄,作为将领,也远远不如说出“当见之事,悉皆见矣。今唯自尽是也”,在坛之浦投海而死的同母弟平知盛。(中略)和明白战败就立即自尽的平知盛、以及看着儿子安德天皇投海,然后自己也跟着投海的健礼门院(宗盛的同母妹)相比,败北的平家之主宗盛只是陷入茫然,眼看着部下们投海,犹豫着要不要和自己的儿子们一起投海,因此错过了机会,被源氏轻易地俘虏。被押送到镰仓的宗盛向源赖朝乞求饶自己的儿子们一命,但只得到源氏一方的嘲笑,最终在坛之浦会战之后三个月,和自己的儿子们一同被斩首。

  即使临死之前,宗盛也在咕哝“右卫门督(其子清宗)已(受斩)乎?”,还在乎着自己的儿子,真是一位关心子女的父亲。可作为一族之长,他实在是不称职。宗盛一直被描写为愚将的典型,甚至有学者认为,他在能剧《熊野》中的自我介绍,正是为了引观众发笑。

  但真的只是如此吗?毋宁说,正因为宗盛是一名愚将,所以才有只能在他身上体现出来的东西。

  【原注:虽说是去赏花,但宗盛和熊野的赏花路线——渡过鸭川之后,沿着车大路往六波罗方面前进——极其不祥。他们经过的地藏堂、爱宕寺、六道辻都是被视为异界(冥界)入口的地方,一行人唱着“可怖哉,这路正是冥途黄泉路,心战胆寒,鸟边山沿”,来到了作为赏花酒宴舞台的清水寺。换句话说,这次赏花是有意识地让他们从与平家密切相关的六波罗出发,前往鸟边山(位于清水寺以南的送葬之地),从而暗示了平家未来的灭亡。】

  ● 作为“因愚昧而灭亡”之象征的宗盛

  山下宏明曾在《军记物语的方法》中这样直截了当地评价过宗盛:「他是犹如重盛的影子一般的存在。正因如此,宗盛是必须作为一族之长,陪伴全族在毁灭的下坡路上滚落的人物。」在平家的荣华到达巅峰时,宗盛只是跟随着父亲清盛和兄长重盛,而当一族没落的时候,他成为了平家之主,成为了使平家的失败和灭亡进行决定性加速的元凶。因此,甚至可以说,平宗盛正是凄惨地滑向灭亡的平家自身的象征。

  有一种观点认为:「在作品中,宗盛是一个节点,连结着各个互不相关的登场人物。同时,他位于放射状的人物关系的中心,起到将关连对象的价值最大限度地烘托出来的作用。因此,各种负面和劣等的元素全部汇集到了他的身上」。《平家物语》所描绘的宗盛这个角色的形象拥有许多各不相同的侧面:他深爱自己的妻儿,还会担心年轻的谋反者的性命及其家人,因此落泪。但与此同时,他也会抢走源仲纲的爱马,在马身上烙下“仲纲”二字,表现出横暴的、施虐狂式的一面(第四卷的《竞》一节)。在关系到战争的决断和自身的生死时,他又会表现出极度的无能和怯懦……这种多样化的描写使宗盛变得更加真实、生动,但反过来说,这也是作品贯彻“将关连对象的价值最大限度地烘托出来”,使不可能为同一人物所有的“负面和劣等的元素”全部凝于宗盛一身的结果。

  源平二家的武将们如繁星般闪烁。被他们的光辉照耀、为了让他们更加闪亮而存在的,则是愚昧、暗黑。宗盛正是愚昧的灭亡之象征,这愚昧的灭亡的分量,足以与辉煌的“生”的总量相平衡。

  平宗盛就是这样的一个人物。他遇到熊野的时间不能确定,但他们的缘分大概可以追溯到宗盛任远江守的时候。正如《平家物语》第一卷的《鲈》一节所写:“世人皆称,平家繁盛如此,乃熊野权现佑护之故”,熊野权现与平家的繁荣关系甚深,平家一门常去参拜。在宗盛十二岁那一年的年末,他随父亲清盛、兄长重盛等人一同去熊野参拜,但趁着清盛不在京都的时候,平治之乱爆发了。根据《平治物语》上卷《自六波罗快马加鞭奔至纪州之事》一章的内容,得知谋反发生的平清盛在得到熊野三山之长(别当)的援助之后,向熊野权现祈祷胜利,然后返回京都,击败了藤原信赖、源义朝等人。

  作为协助镇压平治之乱的报酬,在极短的一段时间里,宗盛被任命为远江守。在《平家物语》第十卷的《海道下》中登场的侍从,或者能剧《熊野》的主角熊野,应该就是在这时从远江的池田宿驿被召至京都的【原注】。

  至于能剧《熊野》的时间背景,从宗盛那仿佛处于家族权力中心的言行来看,应可推测为从其父清盛去世(1181年3月)到平家撤离京都(1183年夏)的这两年。通过剧本中的“清水寺中钟声,如祇园精舍之钟,奏诸行无常之响”等语,大概可以具体地定为平家撤离京都之前的1183年春季;若是如此,《熊野》的情节“横暴的宗盛强迫为母亲的病情悲伤的美女熊野跟自己一起赏花”就不过是表层的戏剧冲突而已。蕴含在深层领域中的情节,可能应该是这样——宗盛预感到平家和自己即将灭亡,为了与京都的荣华最后惜别,将爱妾熊野留在身边,“唯在今春,欲以其为赏花之伴”,在清水寺的宴席上营造了最后的回忆,然后就让她离开危险的京都,回池田宿驿去了。

  从结果而言,宗盛与熊野相遇的契机,就是去熊野的参拜,他们可能也一同见证了平家荣华绝顶的时刻。与熊野分别之后,时年36岁的宗盛撤离京都,在漫长而艰苦的行军之后死去——正因为他是极度的愚将,才使平家的灭亡变成了一次极长的游街示众。

  科学史家兼比较文化学家伊东俊太郎受田代庆一郎的《阅读谣曲》(1987年)启发,在《阅读<熊野>》(《观世》1987年11月号)一文中,认为本剧的目的是让观众看穿剧情背后的《平家物语》情节,并且唤起“熊野”的“生与死的连接之处,冥界的入口”这个意象(熊野地区是净土信仰的中心,亦即“位于此岸的净土”),从而将能剧《熊野》的主题定为“熊野=死”【译注】。

  以下引用伊东俊太郎的观点:「宗盛在现世穷极荣华,只看得到——毋宁说,是只想看得到——『生』的一面。与他相对,熊野一直在叙述『母亲的病情』,从而不断地向他展示『死』的一面。」宗盛与熊野的这种对立,走过层叠着死亡暗示的行程,最后在酒宴上经由和歌“今当何以处……”决出了胜负。「这莫若是象征着,一味地拒绝死亡的宗盛,终于不得不接受死亡了吗?这场花宴的时间,据认应该是治承四年(1180年)。如果的确如此,正是在这一年,源赖朝为讨伐平家而起兵,木曾义仲同时也在信浓举兵,平氏在富士川会战中战败。而在仅仅五年后的元历二年,宗盛就在坛之浦被俘,经过到处示众,于三个月后在镰仓被斩首。宗盛所讴歌的『此世之春』,实则不过是像小阳春一样转瞬即逝的煊盛。在这春色背后潜藏着严酷的寒冬,而在荣华的『生』的背后,也正是逐步逼近的凄惨的『死』。」这样看来的话,能剧《熊野》的最后一个场面“”便也是「在转瞬即逝的荣华之后,恰如樱花凋零,平家也即将灭亡。这岂非正是熊野『对平家的惜别』吗?」

  【译注:关于田代庆一郎的的类似观点,请参见译者以前翻译的文章:https://www.douban.com/note/561696946/。】

  【原注:(引用略)平宗盛就任远江守时过于年少,且并非亲身赴任,而是遥任,因此他将池田宿驿之女(熊野或侍从)召至京都的经过与时间均不明确。进一步说,《平家物语》中所谓的“宿驿长者”,既有可能是店主,也有可能是旅店中的老鸨或妓女头。这样看来,就连熊野自身的人物形象也不确定了。就如反映出如此多种多样、变化不定的熊野形象一般,“熊野”的原文“ゆや”也有“熊野”、“遊屋”、“遊や”、“湯谷”等好几种汉字写法。(后略)】

  ● (略)

  三岛由纪夫曾数次表示,能剧《熊野》是“奇怪”的——「越是反复阅读,就越是觉得故事里有某种难以理解的要素」(《关于<熊野>》,1965年)。当歌舞伎《熊野》重演之际,他给《歌舞伎座节目》写了一篇文章《复返熊野春》(1957年)。在介绍了歌舞伎《熊野》的创作经过和改编要点之后,他继续写道:「能剧《熊野》的故事十分奇怪。宗盛把那般担心重病母亲的熊野强拉去赏花,他的心理既有某种豪放的、男性式的施虐主义,也有文艺复兴时期的老爷式的快乐主义。而跟他一起去赏花的熊野的心理,也不仅仅是单纯的怨恨或悲哀的屈从,而是仿佛被樱花引诱而去一般。在这里,赏花是『此世的快乐』的代表,而母亲的病情是『人类生老病死的宿命』的代表,从而形成了明确的对比。使我深感兴趣的,正是这种对比。这不是简单的、剧中人物性格的对比,而是能剧独有的、戏剧性的对比。」

  就像之前所述的那样,能剧《熊野》将平宗盛这一实际存在的人物编进了故事,又让一名年龄与形象均暧昧不明的女性作为宗盛的爱妾“熊野”登场。从他们出场的那一刻起,剧情便设定了一个不言自明的前提:平家荣华与灭亡的情节,是这个故事的大“舞台”。宗盛与熊野体现的是“表层的舞台”、“表层的戏剧冲突”,它们与“平家的荣华与灭亡”这一“深层的舞台”、“深层的戏剧冲突”相互刺激、紧密连接,才构成了能剧《熊野》的完整故事。(中略)而使“深层戏剧冲突”得以体现的,正是不断强调“死亡正在逼近(不登场的)熊野之母”这一手法。

External Image
京都东山周边图,出自小学馆《日本古典文学全集·谣曲集1》
Comments: 1 :: View Comments
5 Pages V  1 2 3 4  » 

Expand

Billboard

若无特殊说明,本聚合页面内容均为T.R.O.W.会员创作编译,未经发布者允许请勿擅自转载。


Expand

Stations

Time is now: 2019-03-21, 03:27