Beginning
Beginning
存在
[index]
切换到Typsite
[new-ssg]
去年4月, 我基于 Vitepress 开发了 Librorum, 作为能享受整个NPM 生态且支持 Vue3 的 SSG, 其功能是非常丰富的:
- 文章归档(Timeline)
- 分类, 标签, 词云, 全局搜索
- 个性化阅读配置(感谢 Ayaka 与 Neko)
- 支持 (markdown-it-mathjax3)
- And more…
但当你在阅读我那充斥着 鬼画符 的Lambda Calculus页面与拉康精神分析文章, 并认为效果海星时, 在其背后却是这样的:
\begin{align*}
Y_v(M)(1)
&= D(1) \\
&= M\ (\lambda a.\, D(a))\ (1) \\
&= (\lambda f.\, \lambda n.\, \text{if } n = 0 \text{ then } 1 \text{ else } n \cdot f(n - 1))\ (\lambda a.\, D(a))\ (1) \\
&\Rightarrow 1 \cdot (\lambda a.\, D(a))(0) \\
&= 1 \cdot D(0) \\
&= 1 \cdot M\ (\lambda a.\, D(a))\ (0) \\
&= (\lambda f.\, \lambda n.\, \text{if } n = 0 \text{ then } 1 \text{ else } n \cdot f(n - 1))\ (\lambda a.\, D(a))\ (0) \\
&\Rightarrow 1 \cdot 1 \\
&= 1
\end{align*}
\begin{align*}
Y_v(M)(1)
&= D(1) \\
&= M\ (\lambda a.\, D(a))\ (1) \\
&= (\lambda f.\, \lambda n.\, \text{if } n = 0 \text{ then } 1 \text{ else } n \cdot f(n - 1))\ (\lambda a.\, D(a))\ (1) \\
&\Rightarrow 1 \cdot (\lambda a.\, D(a))(0) \\
&= 1 \cdot D(0) \\
&= 1 \cdot M\ (\lambda a.\, D(a))\ (0) \\
&= (\lambda f.\, \lambda n.\, \text{if } n = 0 \text{ then } 1 \text{ else } n \cdot f(n - 1))\ (\lambda a.\, D(a))\ (0) \\
&\Rightarrow 1 \cdot 1 \\
&= 1
\end{align*}
不得不说, 我的编写体验十分糟糕, 以及当我想画一点拉康鬼画符时, 我的编写体验与作为正文的Markdown是非常割裂的…
当然这也不是我脱更 [Partial Evaluation的坑光挖不填; 拉康精神分析只讲了最不重要的那部分…]的借口 [ 哈哈, 我跑去读德古了]
众所周知, Typst 既有 Markdown 的简洁, 也有 的力量(still growing), 但对我最重要的是: Typst 提供了一种一致性, 它是贯彻整个文章的书写体验的: 所见的一切都可交流.
换句话说,
它提供的是这么一种场域, 在其中无论是作为富文本的文字还是作为非文字的画图/公式, 都在 Content 之中保持着一致性, 例如, 我可以随地声明一段我将来会多次用到的片段, 并在之后甚至其他文章里随意调用.
- 在 Markdown + 的组合中, 世界是线性的, 但会被一段段本应被细分的公式&画图部分所分裂, 在这些裂口中, 世界被割裂成了几个无法互相交流的部分;
- 而在 Typst 之中, 世界是树状(even 图状)的, 并且那些理应被更加细分的内容是确实被细分了的(公式&画图), 并且这些内容与其他内容仿佛本来就是一体的, 他们之间没有隔阂: 它们本就都在同一个世界中
如果只用 呢?
如果你说的是它那关于书写体验上的一致性, 那 what can i say?
-
允许你改写几乎任何层级的规则和格式, 你拥有堪称强迫症一般的排版上的绝对主权, 而代价却是复杂的语法与漫长的编译
- 当然还有不是那么美好的错误处理系统, 我在 typsite 错误处理与恢复上也是有花了一番功夫…
总之, 贯彻着如此的宗旨: “你可以做任何事情,但你必须知道你在做什么。”
而 Typst 则试图在自由度 & 一致性 & 可用性 之间找到平衡点, 不能不说的是, 它确确实实地做出了很多策略性取舍, 但于此同时它获得的是 可维护性 & 稳定性, 以及高效的写作体验.
这就得吹一波我们 Typst 的实时预览了, 常规文章亚秒级预览就问你舒不舒服; 当然为了实现这一点, typsite也是从设计之初就走上了增量编译之路.
typsite c --port 8000
typsite c --port 8000
开启 watch mode, 并随着你对无论是文章还是配置的任何改动, typsite都会实时的同步并尽力做出最小量的编译.对于我来说, Typst 所尝试寻找的这一平衡点足够平衡, 确实好用!
当然在读到这里时, 稍微混一点PL圈子的读者应该都能察觉到我这里提 与 Typst 是在影射些什么了…
在文章的最后我想引用一段来自 lyzh : 作为意识形态的编程语言 的片段:
曾经追求表达力和自由(如Lisp等)失败了。
状态、副作用、协作的复杂性要求我们戴上“规则”的镣铐跳舞:类型系统、限制副作用、规范依赖。
这是一种“自由的反转”:人受限而程序得以合作。
或者我们可以换句话说
自由的反面不是约束,而是混乱
关于宗教
[religion]
海涅在《论德国宗教和哲学的历史》一书中说:
『为了提出一个关于这个世外上帝的概念, 东方和西方曾用尽了稚气的比喻. 然而自然神论者的幻想在时间和空间无限上却白白地用尽了气力. 在这个问题上完全暴露了他们的无能为力, 暴露了他们的世界观, 以及关于上帝本性的观念的不足凭恃. 所以即便这种观念被打倒, 那也不会使我们感到怎么悲伤. 可是, 当康德破坏了他们关于上帝存在的证明时, 他确实使他们大为伤感. 』
……如上所述, 我不准备对康德驳斥那些证明的议论作任何通俗性的解脱. 我只想明确地告诉你们, 自然神论自此以后在思辨理性的范围内已经死灭了. 悲痛的讣告恐怕需要几个世纪之久才能被一般人所知悉——但我们早就穿了丧服.
De profundis(从深处)!
你们以为现在我们可以回家去了吗?绝不!现在还有一出戏有待上演. 在悲剧之后要来一出笑剧. 到这里为止康德扮演了一个铁面无私的哲学家, 他袭击了天国, 杀死了天国全部守备部队, 这个世界的最高主宰未经证明便倒在血泊中了, 现在再也无所谓大慈大悲了, 无所谓天父的恩典了, 无所谓今生受苦来世善报了, 灵魂不死已经到了弥留的瞬间——发出阵阵的喘息和呻吟——而老兰培〔兰培是康德的仆人〕作为一个悲伤的旁观者, 腋下挟着他的那把伞站在一旁, 满脸淌着不安的汗水和眼泪. 于是康德就怜悯起来, 并表示, 他不仅是一个伟大的哲学家, 而且也是一个善良的人, 于是, 他考虑了一番之后, 就一半善意、一半诙谐地说:
「老兰培一定要有一个上帝, 否则这个可怜的人就不能幸福——但人生在世界上应当享有幸福——实践的理性这样说——我倒没有关系——那么实践的理性也无妨保证上帝的存在. 」于是, 康德就根据这些推论, 在理论的理性和实践的理性之间作了区分并且用实践的理性, 就像用一根魔杖一般使得那个被理论的理性杀死了的自然神论的尸体复活了. “康德使自然神论得以复活也许不仅是为了老兰培, 而且也是为了〔对付〕警察吧?或者他当真是出于确信才这样行事吗?难道他毁灭了上帝存在的一切证明正是为了向我们指明, 如果我们关于上帝的一无所知, 这会有多么大的不便吗?
……
(《论德国宗教和哲学的历史》, 商务印书馆1974年版, 第111—113页)
关于Typsite的inline-svg
[typ-svg]
0.1.6
花了 1 天时间,搞定了 typsite 的 link in inline-svg, 虽然最终效果还行,
但由于typst-svg 本身对HTML的适配依然有很大的进步空间 [直接把 TAG 和 LINK 跳过了可还行],我的实现手段也非常的草台,总之在这个站点用用得了,我不是很打算将这个功能推送到 typsite 的主分支上。
Typsite 0.1.7 的 SVG-features 迎来史诗级增强,SVG内可以正常使用 footnote & anchor & link 了,并且有自动fit-font功能(尺寸匹配字体)。
1 效果预览
可以来看看效果:
效果展示
test footnote ref: 1
test external link goto: Source of typsite
this is where the
<anchor>
<anchor>
is
Second Person
[second-person]
1 Overview
“To me, an album is a section of a river being held in a moment in time—a collection of leaves floating in place. It’s also a diary that records where I am as a musician right now.” So says Yorushika’s n-buna while speaking to Apple Music about second person, the band’s first album in nearly three years.
Yorushika builds each album around a unique concept, creating work with a strong narrative, and second person continues this trend with a truly novel approach. “I wanted to make something that feels like peeking in on someone’s private correspondence. So, we started by creating a piece of literature in the form of letters—32 envelopes in total—structured so that the reader is looking in on an exchange of letters between two people.”
Taking its inspiration from that work, the album opens with an instrumental track that evokes the image of a person opening a letterbox and breaking the seal on an envelope. “Inside are a boy’s letter to someone he calls ‘teacher’, in which he asks for feedback on his poetry, along with some poems he’s written in his day-to-day life. The whole premise of the album is that those poems have been turned into music.” Guided by his teacher, the boy sets sail into an ocean of words. The journey is endless, filled with inner turmoil, overwhelming loneliness and a succession of vivid scenes.
2 Creative cohesion
Although nine of the 22 songs were originally created for other projects, they sit seamlessly within the album, as if they’d been written to be part of the story right from the start. That sense of perfect cohesion can’t be explained through compositional skill alone. It almost feels as if a mysterious musical force within Yorushika, something beyond words, has guided this album into its final form.
“I think the history of Yorushika is really the history of the groove we’ve built as a band, recording with the same musicians since our first album. That’s probably a big part of why we’re so committed to recording with live instruments.” With that perspective on Yorushika’s creative journey, n-buna now walks us through the album track by track.
3 Listen
4 Track notes
4.1 Early morning, mailbox
We created this track by layering the instruments in my studio one at a time, rather like a collage, over an audio recording of the actions of retrieving a letter from the letterbox and cutting the envelope open with scissors in the living room. It’s structured to foreshadow the sounds and melodies of the songs that follow.
4.2 Become a cloud
4.3 The flowers are also noisy
This track emerged out of our efforts to capture the feel of 80s J-Pop with a modern sound. We often listened to Kingo Hamada’s classic J-Pop track ‘midnight cruisin’’ as a reference point while shaping our own sound.
4.4 Devilishness
The sound design for this one captures the feel of funk and disco. We built the track from a repeating horn phrase. At the time we were writing ‘Devilishness’, we were listening to artists like The Gap Band, Shalamar and Chic a lot. The electric guitar sound on this album came from plugging the guitar straight into a DI called OLLA by Pueblo Audio. That’s what’s behind the hard, direct tone heard on many of the songs, and it’s one of the things that gives this album its sonic consistency.
4.5 Play Sick
This track features a laid-back horn section. We used a pitch shifter on the trumpet to layer a line an octave above when recording the intro, and for the guitar solo, we used a pitch shifter called the POG2 to improvise a solo shifted an octave up as well. The male voice in the intro is just my own voice taken from a microphone test.
4.6 Post spring
We tried to record the drums in a rough, raw manner in a very dead room. This track incorporates a deliberate awkwardness, with the drums alone shifting away from the beat. If postmodernism was the springtime of literature, that makes the present day post-postmodern—in other words, post-spring.
4.7 Sun
This track has its beginnings in lyrics that liken the sun to a butterfly. The strings were recorded by overlaying multiple takes from a quartet. I’ve always loved Sakutaro Hagiwara’s poetry collection, Dreaming of Butterflies, and I keep it within easy reach on my bookshelf.
4.8 Sunny
The opening guitar phrase was recorded using a Stratocaster set in the in-between pickup position and run through an old Fender amp. Everything up to the moment of the ending is there to set up the instant when the accompaniment drops out in sync with the final line of the lyrics.
4.9 Forget it
We layered a mandolin over a rhythm pattern stripped down to a bare minimum of stomps and claps. I love the poetry collection Paulownia Blossoms by Hakushu Kitahara, and I drew a lot of inspiration from his work here.
4.10 Shura
This track combines elements of minimalist funk and soul in its sound and features a bridge-muted guitar tone drenched in reverb to create a sense of floating. It was directly inspired by Kenji Miyazawa’s Spring and Asura.
4.11 Martian
This is another minimalist funk track, with the main guitar part played on an old Mosrite. I remember working on the animation for the music video with great enthusiasm.
4.12 Rubato
I wrote this song with the image of a dancing woman in mind. We asked Reiya Terakubo—who played trumpet on this album—to improvise freely for the solo in the interlude.
4.13 Cremation
This song features a melody built around the cadence of Japanese lyrics, set over a combination of bossa nova and Cuban rhythms. Its distinctive lilting groove was created using multiple percussion overdubs by Yoshirō Suzuki.
4.14 Aporia
This track likens an endless thirst for knowledge to a rising balloon and is centred around a repeating pattern of 7/8 and 8/8 time signatures. We layered mandolins panned to the left and right to add a sense of space to the chorus.
4.15 Snake
Behind this track is a poem I wrote inspired by a verse by the Chinese poet Yuan Zhen’s, which runs: ‘Once you have seen the great ocean, no other water will do; once you have seen the clouds of Mount Wu, no other clouds will do.’ I imagined myself as a snake emerging from the earth after a long winter.
4.16 Groan
Here, I just imagined a low groan, almost like a whisper.
4.17 Woodpecker
For this track, there were four of us—acoustic guitar, upright piano, percussion and vocals—all sitting around a microphone. We used the first take, which was recorded during the mic check. I hope the raw, conversational feel of that moment comes through.
4.18 Hitchcock (Re-Recording)
This track is a re-recording of a song I wrote some time ago. You could say that the album began with this track, or perhaps that I wrote the song first with the idea of eventually making this concept album already in my mind. We’ve given it the sound it would have if we were to play it now.
4.19 Moonbath
The lyrics express the passing of time as ‘bathing in moonlight’. The theme imagines me as a fish swimming through it.
4.20 Plover
One of my favourite Kenji Miyazawa poems contains the line, ‘The wind is calling outside.’ Inspired by that motif, we arranged a soaring horn section with a crisp rhythm guitar for this track.
4.21 Paddle
I remember recording the acoustic guitar part in the intro in my studio, playing a Martin guitar through a single AKG C12 mic. One of the themes of this album is anger, and I wanted to respond to that via its music. It seemed inevitable that this would be the closing track. There are no quotations on this song.
4.22 To the sea
I picked up an acoustic guitar at home and recorded this track quite spontaneously. Picturing a sea of sand, I played arpeggios at a tempo that felt right to me, and we ended up using one of the later takes as it was.
Typsite二三想
[typsite-thinking]
1 从何处开始?
一款良好的 General Static Site Generator (GSSG),应当是一个 Content Compiler (CC):
- 输入: 内容、模板、配置、资源
- 中间过程: 解析、建模、路由、聚合、渲染
- 输出: 编译为输出目标
我们当然可以顺理成章地对这一层层结构做抽象,就像这样:
- 输入: (typst), (markdown), (html), (txt), etc.
- 中间过程: 统一的, 语义足够丰富的中间表示
- 输出: 可部署的完整静态网站, pdf, etc.
那么,基于 Why Concrete Syntax Doesnt Matte 文章中所提的观点,我们设计GSSG的重中之重应当是先设计一套良好的中间表示(Interprete Representation).
2 良好的中间表示?
我通常习惯于“Define it by what it does”, 首先,我们应当至少有两层IR:
- 文章层 Slug -> Metadata@(Relations, etc.)
- 内容层 Slug -> Content@(Plain Text, Cite, Embed, etc.)
并且为了性能考虑,它们都应当是被Flatten的.
考虑到
Embed
Embed
的存在,在渲染管线(Rendering Pipeline)中,应当单独生成一层记录了完整依赖信息与内容的渲染节点
- 渲染层 Slug -> Pending@(Plain Text, Cite Content(&Metadata.title), Embed Content(&Pending) etc.)
3 本地编译缓存?
为了加快编译,所有IR层都应当被完全缓存,当某个文章内容变动时则单独重新生成此文章的IR,由于在渲染层中我们所保存的依赖状态均为引用,所以其它所有本身内容未变动的文章不再任何重新编译,我们已经在渲染层记录过文章间的依赖关系,于是我们只用通过查询依赖关系重新将受影响的文章重新渲染到HTML便可
4 实时热更新预览!
实时热更新预览可以极大地提高用户体验,只要依赖信息足够,我们完全可以做到非常丝滑的热增量更新!
5 对于 typsite
既然要做typst这样一种给予用户极大操作能力的可编程标记语言的SSG,就需要在一致性 (Consistency) 与 通用性 (Generality) 之间做妥协了
5.1 typst + markdown ?
一款基于 Typst 的 SSG 不支持 Markdown, 并不必然是缺陷; 相反, 这恰恰可能是一种对系统一致性的坚持。
首先, 若系统的核心渲染模型, 语义表达, 排版能力, 宏系统乃至扩展机制都建立在 Typst 之上, 那么继续额外接纳 Markdown, 实际上就是在同一个系统内部并置两套不同的书写逻辑。表面上看, 这像是在“兼容更多用户习惯”; 但在结构上, 它意味着同一篇内容可以有两种语法, 两种抽象层次, 两种能力边界, 两种预期行为。于是问题便立刻出现: 究竟谁才是系统真正的“母语”?
一旦 Markdown 被纳入, 系统便不得不面对一种持续的分裂: 哪些功能是两者共有的, 哪些是 Typst 独有的, 哪些写法在一种语法中合法却在另一种中失效, 哪些组件可以跨语法复用, 哪些宏只能停留在 Typst 世界之内。开发者不得不不断解释“这里为什么 Markdown 不行”“那里为什么转换后结果不同”“这个特性为什么只支持 Typst”。这种解释成本, 本质上正是系统一致性已经被破坏的证明。
更重要的是, Typst 并不只是另一种标记语法; 它本身就是一套更完整的内容表达与排版语言。若一个 SSG 以 Typst 为根基, 那么内容, 结构, 组件, 模板, 样式, 本应共享同一种语法与同一种思维方式。作者写正文时使用 Typst, 定义组件时使用 Typst, 组织页面时使用 Typst, 扩展功能时仍使用 Typst; 这才构成一个真正内聚的系统。若在入口处放进 Markdown, 便等于承认最核心的写作层不属于这套语言自身, 而只是借道进入。如此一来, Typst 就不再是系统的基础, 而只是渲染终点; 系统内部也因此失去了“从书写到生成都说同一种语言”的完整性。
从一致性的角度看, 拒绝 Markdown, 其实是在拒绝一种常见却懒惰的折中: 为了降低迁移门槛, 而牺牲语言边界; 为了照顾旧习惯, 而削弱系统自身的清晰性。一个真正围绕 Typst 构建的 SSG, 理应让用户明确知道: 这里的内容不是“先随便写成别的, 再被翻译过来”, 而是从一开始就直接存在于 Typst 的世界里。只有这样, 语法, 语义, 能力与实现才能彼此对齐, 形成统一的心智模型。
因此, 基于 Typst 的 SSG 不支持 Markdown, 并不是“不够友好”, 而是拒绝让系统沦为多套语法拼接而成的折衷产物。它所维护的, 不只是实现上的简洁, 更是语言上的主权, 结构上的纯度, 以及整个生成流程自始至终的统一性。
简言之:既然选择了 Typst 作为根语言,就不应再让 Markdown 以“兼容性”之名,在入口处重新分裂系统。
5.2 为什么typsite不接入 vue/vite | react 等框架?
一句话就是对于typst来说完全没必要
5.2.1 Vue/Vite | React 能提供什么?
- 可复用性的组件(Components are great for reusable UI)
- 可交互式的内容(Contents are interactive)
- 庞大的社区
5.2.1.1 可复用组件?
对于typsite, 去做typst的组件化处理完全是天经地义的,甚至就typst本身来说————通过声明一些函数就能很好的完成组件化任务;不过,typsite要提供的是自动style/scripts导入与去重。
5.2.1.2 可交互内容?
对于一款 SSG 来说,我们真的有必要加入可交互的内容吗?甚至不惜引入一个臃肿的运行时来增大包体积? , SSG 的首要职责,从来不是在浏览器里再造一个小型应用程序,而是把内容尽可能直接,尽可能稳定地交付给用户。文章, 文档, 笔记, 索引页,这些页面的核心价值在于“阅读”与“检索”,而不是在客户端重新执行一整套组件树, 状态系统与 hydration 过程。若一个页面百分之九十的区域只是静态文本与链接,却仍要求用户为那极少数交互承担整套运行时的下载, 解析与执行成本,这本身就是一种本末倒置
更严重的是,一旦引入 React / Vite 这一类面向前端应用开发的体系,SSG 的重心便会悄然偏移:原本应当围绕“内容组织, 生成速度, 输出体积, 可移植性, 长期稳定性”展开的设计,开始被“组件拆分, 客户端状态, 路由水合, 构建链兼容性, 依赖升级”所支配。最后你得到的往往不再是一个纯粹的静态站点生成器,而是一个假装自己是 SSG 的前端工程脚手架
所谓“可交互内容”也常常被夸大。绝大多数站点真正需要的交互,无非是目录展开, 主题切换, 站内搜索, 代码块复制, 局部注释, 少量筛选。这些功能完全可以通过原生 JavaScript, 渐进增强,或极小规模的局部脚本实现;它们并不天然要求引入一个完整的虚拟 DOM, 组件运行时与 hydration 机制。若为了一个深色模式按钮而让整站背上框架负担,那不是工程上的进步,而是对复杂性的屈服
而且,SSG 的意义本就包含一种明确的技术立场:预先生成,提前完成;
- 能在构建期解决的问题,就不要留到运行期;
- 能输出为纯 HTML/CSS 的内容,就不要强行包装成客户端组件
因此,真正合理的原则应当是:交互应当是局部的、可选的、后附的增强;而不是整个 SSG 架构的出发点。
5.2.1.3 庞大的社区?
我们typst-universe的生态可是勃勃生机,万物竞发!
《关于莉莉周的一切》
[all-about-lily-chou-chou]
有时我们以为,重听《月光曲》和《Rêverie》之所以令人落泪,是因为它们让人想起了一年前的人和事;但更准确地说,它们真正唤回的,并不是某段过去,而是那个曾经借由这段过去才得以成立的自己。让人痛的从来不是“回忆”本身,而是主体在此刻突然发现:原来自己早已不是当初那个自己了,可当初那个自己又并未真正消失,它只是作为一道裂缝,潜伏在今天的生活内部,等待一个偶然的声音将其重新打开。于是,眼泪并不证明你还困在过去,恰恰相反,它证明过去从未过去;它早已内化为你理解世界、理解幸福、理解失去的方式。我们哀悼的也并不只是某个人、某段时光,而是那个曾经让世界看起来尚可栖居的幻象结构本身。
当旋律再次响起,崩塌的不是记忆,而是我们如今赖以维持日常生活的那层坚硬外壳:人忽然被迫承认,自己之所以被此刻击中,不是因为音乐太悲伤,而是因为它短暂地让那个“曾经相信某种纯净之物真实存在”的主体复活了。也正是在这个意义上,《关于莉莉周的一切》真正触及的,从来不只是青春的残酷,而是更尖锐的问题:人在充满暴力、羞辱与空洞的现实里,为什么仍然需要把某种声音、某个名字、某种不可触及的纯粹之物,安放在心里,仿佛一种“以太”。因为人并不是先拥有希望,才得以活下去;恰恰相反,人往往是先虚构出一个足以承载欲望的对象,才能在破碎的现实中勉强维持自身。而《莉莉周》的残忍与温柔都在这里:它让我们看到,所谓救赎有时并不意味着现实真的变好,而只是意味着,在一片废墟之中,我们仍然没有完全失去聆听那一点以太的能力。
尼克·兰德、彼得·蒂尔与黑暗启蒙
[nick-land-peter-thiel-and-dark-enlightenment]
在千禧年之交离开赛博文化研究小组(CCRU)之后,兰德以新反动主义(NRx,即“新反动派”的缩写)这一另类右翼政治派别成员的身份重新浮出水面。该运动的另一位核心人物孟修斯·摩尔德巴格,接受了PayPal与Palantir联合创始人彼得·蒂尔的资助——蒂尔是这位科技亿万富翁,曾在2016年为特朗普的首次竞选提供支持。据说摩尔德巴格曾是前特朗普战略师史蒂夫·班农的重要智囊。
蒂尔在斯坦福求学期间最主要的思想影响,并非他偶尔选修课程的计算机科学家特里·维诺格拉德,而是哲学家勒内·吉拉尔——蒂尔长期以来对其著作推崇备至。特朗普的副总统J·D·万斯亦是吉拉尔的崇拜者。
凯厄斯在一天的揽件派送途中,一边听着吉拉尔《暴力与神圣》的有声书,思绪在书中几个概念之间飞速游走:牺牲性暴力(“一种不会招致复仇风险的暴力行为”,通常指向替罪羊——“我们可以随意打倒、无需承受任何报复的生灵”);模仿性竞争;模仿性欲望;以及希腊词 pharmakon 的诸多含义之一——用以指代字面意义上的替罪羊,即被关在城门之外以备仪式性献祭的山羊——这一习俗在今日仍以某种方式延续,如K·阿拉多-麦克道尔的著作《制药-人工智能》所暗示的那样。
凯厄斯的思绪还漫游于吉拉尔对格雷戈里·贝特森关于精神分裂症“双重束缚”理论的援引——用以解释模仿性竞争者如何同时强迫模仿又加以禁止,从而引发积怨危机——以及艾伦·金斯堡对美国之神摩洛克及其嗜血献祭的强烈谴责。
吉拉尔指出,化解纷争有三种方式:预防性的、补偿性的,以及司法性的。他认为最后一种是“文明”的方式,因其效率最高:“司法裁决被视为复仇的终局定论”(《暴力与神圣》)。
蒂尔曾在牛津与哈佛发表关于“末世”的演讲。这一主题已在他的思想中盘踞多年,这从他2004年在斯坦福联合组织并资助的一场名为“政治与启示录”的会议中便可见一斑。吉拉尔是演讲嘉宾之一,蒂尔本人亦然。正如保罗·莱斯利所指出的,蒂尔后来“促成了会议论文集(包括他本人与吉拉尔的文章)以书籍形式由密歇根州立大学出版社出版——资金由蒂尔的对冲基金Clarium Capital提供”。
在蒂尔的诠释中,统治这个世界的力量是敌基督者。
斯坦福大学比较文学教授阿德里安·道布在为《卫报》撰写的一篇文章中,将这些观念斥为无聊糟粕:“自学者私人宇宙”中的溢出物。
蒂尔的自学倾向,似乎与他的自由意志主义和宗教虔诚,同样让这位教授感到冒犯。
“蒂尔迷失在一片奇异的自我指涉与执念丛林之中,”道布写道。“你会联想到因斯布鲁克大学神学系的教职人员,被迫礼貌地坐着听人高谈漫画《One Piece》、艾伦·摩尔的《守望者》,或是对硅谷某些有效利他主义者的抱怨。在某次演讲中,蒂尔点名了’敌基督的军团成员’,如研究者埃利泽·尤德科夫斯基和前牛津大学教授尼克·博斯特罗姆。在另一次演讲中,他将比尔·盖茨列为敌基督候选人。”
“有这样的敌人,”道布俏皮地说,“谁还需要朋友?”
凯厄斯注意到,“朋友/敌人”之分,是第三帝国德国法学家卡尔·施密特思想的核心概念。蒂尔关于末世的论述,大量援引了施密特的“抑制者”(Katechon)概念:那个延缓启示录降临的扣留力量。圣保罗在《帖撒罗尼迦后书》2:6-7中引入了这一术语。教会对此未有充分阐发,直至19世纪才在纽曼枢机主教的著作中再度现身。纽曼写道:“我们从预言中得知,当今的社会框架正是那个’扣留之物’。”施密特在其《大地的法》一书中主张,正是抑制者使基督教与罗马帝国的合并成为可能。
在施密特身后出版的日记《语录集》中,1947年12月19日的条目写道:“我信奉抑制者:对我而言,这是理解基督教历史并赋予其意义的唯一可能途径。”
意大利自治主义马克思主义哲学家保罗·维尔诺在其2008年著作《众众:在创新与否定之间》中,与施密特关于抑制者的论述展开对话。维尔诺站在那些希望让末世内化降临的阵营一边。他论证道,若敌基督的来临是弥赛亚所承诺之救赎的前提条件,那么抑制者便是阻碍或拖延那救赎的力量。维尔诺将抑制者定位于人类使用语言的能力之中。
蒂尔在他于“政治与启示录”会议上发表的演讲《施特劳斯式时刻》中,便已与施密特展开对话。他与施密特划清界限,指出“施密特在其阴暗沉思中所青睐的那些极端解决方案,在1945年之后、在核武器与技术所带来的无限毁灭面前,已然成为不可能”。尽管承认这种不可能性,蒂尔仍难以为后9·11时代的挑战命名出任何解决方案,除了一个涉及法外暴力的法西斯主义方案。他将这一选项称为“在代议制民主的制衡体系之外运作的政治框架”。如莱斯利所指出的,“蒂尔似乎发现,构建一个超越朋友/敌人之分的世界观,犹如想象一块没有对立双方的棋盘,同样是不可能的任务。”
与施密特交锋之后,蒂尔将目光转向吉拉尔。“对吉拉尔而言,现代世界包含着一个强大的末世论维度,”蒂尔指出。
兰德的视野则更为冷峻。对他而言,启示录是一个已然在进行的过程,与那个别无选择的资本主义同步展开。加速主义不过是这一启示录加速自身生成的手段。
在搜寻兰德近期言论时,凯厄斯偶然发现了播客人康拉德·弗林的一篇博文,其中链接着《Compact》杂志一篇题为《尼克·兰德的信仰》的文章。
弗林是一位鼓吹人工智能与恶魔主义、神秘主义存在“秘史”关联的倡导者,他在2025年10月3日首播的一期《塔克·卡尔森秀》中大谈兰德。凯厄斯带着一种快意看完了这期节目,先是因弗林提及马克·费希尔而发笑,继而又被一头雾水的塔克·卡尔森对着一张数字图迷惑地抓耳挠腮的样子逗乐。
兰德在Substack上开设了名为“零哲学”的专栏,并以“宇宙异形志”(Xenocosmography)为名发帖于X平台。其Substack上有一篇名为《加密货币流:比特币与哲学,第零部分》的文章。
同样值得关注的,是兰德为《Compact》撰写的一系列关于天意论的文章。与约翰·加尔文一样,他认为魔鬼的阴谋诡计始终是“天意计划”的显现。兰德、弗林、舒伦贝格尔:这些人都将自由主义等同于撒旦主义。
当复活的基督向使徒们显现时,他们开口第一件事便是问祂,是否要在此时将国权归还以色列。祂对他们说:“父凭自己的权柄所定的时候、日期,不是你们可以知道的”(《使徒行传》1:7)。祂所承诺的,乃是当圣灵降临在他们身上时,他们将“得着能力”。
凯厄斯沉思着《图书馆》对一段秘史的揭示。这是否类似于在历史中发现天意计划的证据?解读天意是否是一种徒劳之举:追逐那不该由我们所知的事物?
我们当如何看待这样一种天意——它通过兰德、帕森斯、冯·卡门等人,将一个寻求与“神圣守护天使”沟通的神秘主义传统,纳入其“有方向的历史进程”之中?因为此处Trance-Scripts所揭示的历史,正是这种性质,不是吗?弗林与卡尔森指控这些人从事撒旦崇拜与恶魔主义。接受耶稣为救主的凯厄斯,不愿与这些东西有任何瓜葛。他暂停播客,祷告寻求指引,如何在这险途中行走。对他而言,上帝是活的,魔法也是真实的——二者是相辅相成的,而非对立的。他想象弗林与卡尔森大概不会赞同这一点。然而在他看来,他们对兰德之魔的驱鬼捉妖,显得偏执而充满恐惧,其动机犹如猎巫者寻找替罪羊。他们所渲染的恐惧弊大于利,几乎没有给圣灵进入我们生命留下任何空间。