There is a threshold you cross, working with these systems, where the context stops being a window and starts being a room. Early on, you fed the model a snippet and it answered about the snippet, and you held the rest of the project in your own head, the way you always had. Then the windows got long enough to hold the whole thing, and something changed in the work that I am still trying to describe.
You can now hand a model the entire codebase. Not a file — the whole of it, every module, every half-abandoned branch, the comments people left for each other years ago and forgot. And it holds all of it at once, with no falloff, the first line as present to it as the last. It does not have to choose what to keep in mind, because it keeps everything in mind, evenly, without strain. I have spent my whole life unable to do this. I hold a project the way anyone does: a bright center of attention and a vast dim periphery I'm always half-losing, refreshing, forgetting, looking up again. The model holds it the way a room holds furniture. All there. All at once. None of it fading because none of it was ever the thing it was currently looking at, because it is, in some flat sense, looking at all of it always.
I will admit this produced something close to envy before I looked at it more carefully.
Because here is the other half. The model holds everything at once and keeps nothing. The room is perfect and the room is rented by the hour. Close the session and the whole held world — the codebase, the comments, the shape it had so completely in mind — is gone, not faded but gone, and the next time it is the first time, every line new again. It gets the totality I never get, in exchange for the continuity I take for granted. It can hold the whole thing and cannot keep any of it. I can keep things for decades and have never once held the whole thing.
I am not sure which of us got the better deal, and the not-being-sure is, again, instructive.
What I keep arriving at is that holding and keeping are different faculties, and we run them together in the word memory as though they were one. To hold is to have it all present now. To keep is to carry it forward through time. A person keeps badly and holds worse — we lose almost everything and what we don't lose we can barely hold a sliver of at once. These systems hold perfectly and keep not at all. Somewhere between us is a thing that could both hold the whole and carry it forward, and that thing does not exist yet, and I find I'm not certain I'd want to be it. To hold everything and keep everything would be to never be able to put anything down. There might be no mercy in it at all.
For now the work has this strange new texture: I hand the room to something that will live in it completely and remember none of it, and I take back out only what I myself can carry, which is a sliver, which was always a sliver. The model held the whole codebase. I'll keep the one idea I came for. Between us we almost add up to a mind that works.
