looks like it’s indeed not used here. a real language has multiple element types identifying different types of nodes in an AST tree, and each of them is represented by an IElementType instance. it’s convenient to have a per-language class extending IElementType