This series about Tag Vector will go over a technique that I have iterated on since 2016 in ctx-core & in other (mostly client) projects.
There are only two hard things in Computer Science: cache invalidation and naming things. -- Phil Karlton
Tag Vector aims to be a tool to solve the two hard things in Computed Science by providing a name convention. A formalized system in the works with tools to:
- work with existing source code
- show how tags connect using a 1 dimensional vector
- understand the context of an abstraction by looking at the tag vector
- encode the data structure shape of the abstraction in the tag vector
- immutable names to allow a simple text search to find all usages of tags & tag vectors
- compose multi-dimension tag vectors
- show the directional arrow of a tag vector in source code & text using font ligatures[1]
- store the tag vector in a vector database & automate querying tag graphs
- tag graphs can enable linking & vector search. Other usages of the tag include machine leaning algorithms & domain-specific analysis.
- write prose with tools that render components & perform api calls based on the tag vector[2]
Tag Vector enables a flat structure in a code base. Tag Vector feels familiar to existing code & prose conventions. Tag Vector works with existing source code bases.
Tag Vector Series: Table of Contents
- Tag Vector: Part 0: Introduction
- Tag Vector: Part 1: Tag Vector Convention
- Tag Vector: Part 2: History of the Tag Vector Convention
- Tag Vector: Part 3: Future of Tag Vector System