|
← 判断力与美学 ← Judgment & Aesthetics
SAE 判断力与美学 · 余项之美
SAE Judgment & Aesthetics · Beauty of the Remainder
2026-05-01

L5:六兆字节里的余项复活术

L5: Resurrecting the Remainder in Six Megabytes

Han Qin (秦汉)

科技产业有自己的凿构循环(chisel-construct cycle),而且转速极快。每隔两三年,一代硬件就完成了从「新品」到「已构」的全程——先是被产品发布会的聚光灯凿开,然后被市场消化,最终沉淀为「电子废弃物」这个完整的、不可挑战的命名。一台2015年的笔记本,在这个循环里的位置和一件被博物馆收藏的艺术品类似:它的故事已经讲完了,它是构。

Lee Tusman不接受这个判决。他是SUNY Purchase的新媒体与计算机科学副教授,也是纽约Permacomputing聚会的联合发起人。2025年起,他开始构建L5——一个用Lua语言实现Processing API的创意编程库。L5运行在Love2D框架之上,总体积约6MB。作为对比,Processing大约500MB,p5.js加上浏览器约需250-355MB。这个数字差异不是优化的成果,而是一个哲学决定的物质化:如果你把创意编程环境缩减到6兆字节,它就能在那些被宣判死亡的机器上运行——十年前的笔记本、过时的手机、抽屉深处的树莓派。

从SAE的角度看,L5做的事情是一种逆向凿构。产业的凿构循环把硬件从余项变成构(从「有可能性的东西」变成「已被命名和归档的废弃物」)。L5把方向反过来:它拿起那些已构的沉淀物——被归入「电子垃圾」这个完整命名的旧设备——然后通过极端的轻量化设计,重新把它们变成余项的现场。一台2012年的ThinkPad,在��行L5的瞬间,不再是「电子废弃物」,而是一个还没有被完全命名的创作场所。它的限制本身——有限的RAM、缓慢的GPU、没有最新的WebGL支持——变成了生成余项的约束条件。输出的视觉形态是约束计算的沉积物,就像Variograph里的粒子是函数链的沉积物。

L5选择Lua作为语言也暗合这个逻辑。Lua诞生于1993年的巴西,是一种极其缓慢、极其谨慎地演进的语言,具有强大的向后兼容性。Java和JavaScript在不断的大版本更新中制造新的弃用和断裂,而Lua几乎静止不动。Tusman把这叫做「弹性」(resiliency)——用L5写的程序有很高的概率在数年后���然能运行,几乎不需要修改。这是一种时间尺度上的余项策略:当整个行业在追求「最新」时,L5押注于「最久」。它的存在本身就是一个对升级循环的政治拒绝,但它的政治性不是宣言式的——它是通过技术选择内化在结构里的。

2026年4月19日,Tusman在柏林xHain黑客空间做了题为「L5:创意编程对永续计算的回应」的演讲。L5目前仍在早期alpha阶段,被Processing基金会纳入Google Summer of Code项目。它同时存在于多个领域的裂缝中:永续计算(permacomputing)还没有承认它是自己的代表作品;创意编程社区(Processing/p5.js生态)还没有完全消化一个6MB替代品的含义;可持续设计、教育技术、独立游戏开发——都能在L5里看到自己的影子,但没有任何一个领域能完整地命名它。这正是余项之美的标志:逻辑还在生长,命名还不完整,还没有被任何一个已构的分类体系吞掉。现在看它,比将来看它更重要——因为将来它要么会被命名(变成构),要么会消失。此刻它是活的。

l5lua.org ↗

The tech industry runs its own chisel-construct cycle, and it runs fast. Every two or three years, a generation of hardware completes the full journey from "new" to "construct" — first chiseled open by product launch spotlights, then digested by the market, finally settling as sediment under the fully formed name "e-waste." A 2015 laptop occupies a position in this cycle similar to an artwork in a museum collection: its story is finished, it is construct.

Lee Tusman refuses this verdict. He is an Associate Professor of New Media and Computer Science at SUNY Purchase and a co-organizer of the Permacomputing NYC meetups. Starting in 2025, he began building L5 — a creative coding library that implements the Processing API in Lua. L5 runs on top of the Love2D framework with a total footprint of roughly 6MB. For comparison: Processing is about 500MB; p5.js plus a browser runs 250–355MB. This numerical gap is not the result of optimization. It is the materialization of a philosophical decision: if you shrink a creative coding environment to six megabytes, it can run on machines that have been sentenced to death — decade-old laptops, outdated phones, Raspberry Pis buried in drawers.

From the SAE perspective, what L5 performs is a reverse chisel-construct operation. The industry's cycle turns hardware from remainder into construct (from "a thing with possibilities" into "waste, fully named and filed"). L5 reverses the direction: it takes construct-sediment — old devices already filed under the complete label "e-waste" — and, through radically lightweight design, turns them back into sites of living remainder. A 2012 ThinkPad, the moment it runs L5, is no longer "electronic waste" but an as-yet-unnamed creative site. Its limitations — constrained RAM, a slow GPU, no bleeding-edge WebGL — become the very conditions that generate remainder. The visual output is sediment of constrained computation, just as Variograph's images are sediment of composed function chains.

L5's choice of Lua as its language aligns with this logic. Lua was born in Brazil in 1993 and evolves with extreme slowness and deliberation, maintaining strong backward compatibility. Where Java and JavaScript manufacture new deprecations and breakages through constant major version updates, Lua remains nearly still. Tusman calls this "resiliency" — programs written in L5 have a high probability of still running years from now with little or no modification. This is a remainder strategy operating on the axis of time: while the entire industry chases "newest," L5 bets on "longest." Its very existence is a political refusal of the upgrade cycle, but its politics are not declarative — they are internalized in the structure through technical choices.

On April 19, 2026, Tusman gave a talk at xHain hack+makespace in Berlin titled "L5: A Creative Coding Response to Permacomputing." L5 remains in early alpha, listed as a Google Summer of Code project through the Processing Foundation. It simultaneously inhabits the cracks between multiple fields: permacomputing has not yet claimed it as a flagship project; the creative coding community (the Processing/p5.js ecosystem) has not fully digested what a 6MB alternative means; sustainable design, educational technology, indie game development — all can see their reflections in L5, but none can fully name it. This is the signature of the beauty of the remainder: the logic is still growing, the naming is still incomplete, it has not yet been swallowed by any established categorical system. Seeing it now matters more than seeing it later — because later it will either be named (become construct) or disappear. Right now, it is alive.

l5lua.org ↗