周五傍晚的学校礼堂像个巨大的蚌壳,夕阳从高大的彩绘玻璃窗漫进来,给红色丝绒幕布镀上层金箔。陈志强蹲在舞台侧后方调试设备,笔记本电脑屏幕泛着冷光,映得他下颌线格外清晰。唐雨欣的芭蕾髻从幕布缝隙探出来,发梢沾着点金粉,像落了只萤火虫。
“音效系统再慢0.3秒,”她的声音带着点舞台妆特有的清冷,“最后那个阿拉贝斯克动作,需要留白。”陈志强指尖在键盘上敲了下,调出波形图,果然在第1分47秒的位置有个突兀的峰值,像心跳漏了一拍。
这是唐雨欣去北京参加舞蹈集训前的最后一场演出,选的是现代芭蕾《时间的碎片》。半个月前她找到陈志强,手里捏着张乐谱复印件:“能让代码跟着舞步呼吸吗?”那天她刚上完体能课,练功服后背洇着深色的汗渍,手指却在乐谱上划出精准的弧线,“就像……循环语句跟着旋转的节奏变速。”
系统当时弹出过提示:【检测到跨领域协作请求,“艺术感知”模块适配中】。但陈志强没看提示,只是盯着她指尖的薄茧——那是常年练舞磨出的,和他敲代码的指节上的茧子很像。
“最后一次联排。”唐雨欣退回幕布后,裙摆扫过地面,带起细小的灰尘。陈志强调试好最后一个参数,抬头时看见她对着镜子调整肩带,练功服领口露出的锁骨像道优美的抛物线,和他代码里的曲线惊人地相似。
观众席渐渐坐满了人,沈静带着林薇薇和苏晴坐在第三排,手里举着写着“唐雨欣加油”的荧光牌,牌面画着只踮脚的天鹅,是林薇薇用亮片贴的。苏晴今天没戴眼镜,眼角的红比平时明显些,手里攥着本翻旧的《舞蹈鉴赏》,书脊上有她用铅笔写的“节奏=逻辑”。
幕布升起时,陈志强的心跳莫名快了半拍。聚光灯打在唐雨欣身上,她穿着银白色的舞裙,裙摆上缝着细碎的镜片,旋转时像揉碎的星子。陈志强盯着屏幕上的实时音效代码,循环语句随着她的舞步伸缩,在“阿拉贝斯克”动作时突然放缓,像深吸了口气。
他想起第一次和唐雨欣讨论代码与舞蹈的那天,她把芭蕾术语翻译成“变量”“循环”“跳转语句”,说“pirouette(单足旋转)就像递归函数,每一圈都回到原点又高于原点”。当时系统弹窗说【检测到“隐喻转化”能力】,但陈志强觉得,这更像两种语言在说同一件事——关于秩序与自由。
舞蹈进行到中段,唐雨欣突然做了个即兴动作,本该踮脚的瞬间改成了深蹲,手臂像折断的翅膀垂落。观众席有轻微的骚动,陈志强却立刻在代码里加了段下行音阶,钢琴声沉沉地落下去,刚好接住她的动作。他看见唐雨欣在舞台上勾了勾嘴角,像在说“接得好”。
沈静后来告诉他,那段即兴是因为唐雨欣的足尖鞋磨破了,脚趾在流血。但陈志强觉得,那更像她故意留给代码的空隙,像在证明“意外也能被温柔接住”。
最后一段音乐响起时,陈志强的代码里藏了个秘密。他在主旋律的间隙插入了段高频音,普通人听不出来,但系统显示那是用“再见”的拼音首字母“ZJ”转化成的声波频率。唐雨欣旋转到舞台中央时,突然朝他的方向看了一眼,足尖在地面划出道完整的圆,像在给这个秘密盖章。
舞蹈结束的瞬间,全场寂静了两秒,然后爆发出雷鸣般的掌声。唐雨欣站在聚光灯下鞠躬,汗水顺着脖颈流进衣领,在锁骨处积成小小的水洼。她抬手抹了把脸,把散落的碎发别到耳后,突然拿起舞台边的话筒。
“这段旋律不是我编的,是代码写的。”她的声音有点喘,却很清晰,“写代码的人可能不知道,他在循环语句里藏了‘再见’两个字的拼音首字母。”
陈志强的手指猛地顿在键盘上,屏幕上的代码还在闪烁,第37行的变量名赫然是“ZJ_0725”——今天的日期。他突然想起唐雨欣上周借他的《算法导论》,扉页上写着“7.25北京见”,当时以为是随便写的。
观众席发出善意的笑声,沈静推了推苏晴的胳膊,两人眼里都闪着光。林薇薇举着荧光牌站起来,忘了关掉的手机闪光灯在黑暗中亮了下,像颗掉落的星星。
唐雨欣谢幕三次才走下台,路过设备区时,把一个银色U盘塞进陈志强手里。她的指尖带着舞台妆的珠光,碰到他的皮肤时有点凉。“给乡村学校的‘音乐涂鸦’方案,”她的声音压得很低,带着点鼻音,“每个涂鸦都能生成专属旋律,等我回来验收。”
陈志强捏着U盘,金属壳被体温焐热。他想说“一路顺风”,却看见唐雨欣的足尖鞋在地上留下个小小的血印,像朵没开的花。于是他只说:“代码我会改到你满意。”
唐雨欣笑了,眼角的细纹里还沾着金粉:“不用改到我满意,改到你觉得‘这就是它该有的样子’。”她转身离开时,裙摆扫过设备线,带起的风里有她常用的护手霜味道,像某种植物在雨后的清香。
系统在这时弹窗:【跨领域情感表达完成,奖励“隐性沟通”能力——无需语言即可传递意图】。陈志强关掉界面,发现U盘上挂着个小挂件,是用芭蕾舞鞋的缎带编的小蝴蝶结,和他代码里的曲线弧度一模一样。
后台的镜子里,映出两个身影。陈志强坐在设备前,屏幕上的代码还在循环;唐雨欣在远处换衣服,白色的舞裙搭在椅背上,像只展翅的鸟。镜子把他们框在同一个画面里,却又隔着恰到好处的距离,像他们的关系——互相看见,不必纠缠。
走出礼堂时,暮色已经漫上来。沈静他们在门口等他,林薇薇举着荧光牌晃了晃:“藏得够深啊,‘ZJ’都出来了。”苏晴推了推新配的眼镜:“我爸说搞艺术的都不理性,可你们这比解数学题还精准。”
陈志强把U盘举起来,月光在上面反射出细碎的光。“她留了个方案,”他说,“给乡村孩子的‘音乐涂鸦’,每个画都能变成歌。”
沈静突然指着天空:“看,流星!”四个人都停下来抬头,其实那只是架飞机,但谁也没说破。陈志强在心里默默把“ZJ_0725”改成了“ZJ_待续”,觉得有些告别不是结束,是换种方式继续同行。
回家的路上,他打开那个U盘,里面除了方案还有个视频。是唐雨欣在练功房的样子,穿着灰色练功服,反复练习那个即兴的深蹲动作,画外音里她对老师说:“我想试试,摔倒了也能好看。”
陈志强把视频发给唐雨欣,附了条消息:“代码学会摔倒了,等你回来教它怎么漂亮地站起来。”
很快收到回复,只有个跳舞的表情包,小人儿旋转着,脚下拖出条闪亮的线,像在写一行永远不会结束的代码。