Back in the 90's, when I was first running out of money for graduate work, I had already gradually refined my understanding of What I'm Doing to be, in the shortest terms, "semantics." I didn't have the mental tools back then to understand what that meant in any detail—but I knew it when I saw it, and I saw it everywhere in the work of the Fluid Analogies Research Group (FARG). So what I wanted to do in 1997, and what I attempted in 2004 in the spare time I turned out not to have yet, and what I'm actually starting to achieve today, was to examine the several models of cognition that the Group had promulgated, and to distill out the commonalities.
By "examine," of course, I meant to redevelop the key models in sequence, basing them on some common codebase. In the mid-90's, to me, that meant "Jumbo, Numbo, and Copycat." Now it means a much longer list: Jumbo, Numbo, Copycat and Metacat, Tabletop, Letter Spirit, Phaeaco, SeqSee, Capyblanca, Ear's Mind, Madcat if I can ever find that thesis, Musicat, and Linguoplotter, or some subset of those. (I'm not made of time.) Some of them have code available, some don't. I don't particularly care about that, as the point isn't to port code but to comprehend and formalize the concepts they use.
Because the structure of each of these domains, or rather the hypothetical abstracted platonic ideal they have in common, is the "fluid concept" that runs throughout Hofstadter's and FARG's work. It was the starting point for my journey to understanding how semantics must work in the human mind, or in any system that simulates the same mechanisms for fun and profit. I expect to be writing a lot more about this in the coming years; this isn't going to be a weekend project. My first stab at Jumbo and the parallel terraced scan was in early 2024, and while I certainly hope future domains will go faster than the two years Jumbo has been pending, it gives me a relatively long-term view. ReFARG as a whole will probably take me five years if I follow through—one or two if I just hit some of the high points along the way.
Each FARG domain (each of the FARG projects, in other words) can be seen as consisting of some code that implements the parallel terraced scan and various other organizing data structures on the one hand, and on the other hand a set of codelets that are a kind of active implementation of the semantics of the target domain for that project. In Jumbo, the semantics are well-concealed, but in Copycat they're almost reified in the Slipnet. But the Slipnet is only a static representation of just those concepts that Mitchell and Hofstadter found important for the letter analogy domain. Even in the 90's I had envisioned a declarative specification for the Slipnet that would draw on some kind of lexical knowledge, and that's the structure I want to target with ReFARG. Those semantics not only describe the Slipnet, but also provide a framework for the codelet ecosystem of each domain that (it has always seemed to me) would allow the codelets themselves to be abstracted into some kind of declarative structure.
So now I'm in a position to see whether that makes sense, over the course of 2026. Took me long enough.
My current implementation of Jumbo (or Jum, at least) isn't written on this explicitly semantic basis. I'm still feeling my way through a working terraced scan and what it means to design codelet ecosystems at all. Some of my near-term plans reframing how I see and design codelets and process chains will feed into a gradually more semantically mature framework, but I'm not there yet.
I'm starting to see it through the murk ahead, though.