Glossary

Terms

TeX / LaTeX

The TeX typesetting system and the LaTeX macro package ecosystem.

Engine

A TeX executable such as pdfTeX, XeTeX, or LuaTeX.

Log

The textual stream emitted by the engine (and/or auxiliary build tools). Typically materialized as a .log file.

Event IR

FerroTeX’s typed intermediate representation of log semantics (file transitions, diagnostics, warnings, etc.) with provenance spans.

Provenance

The ability to trace an emitted event/diagnostic back to an exact byte span in the source log buffer.

File Context Stack

The reconstructed nesting of file inputs inferred from the log’s parenthesis structure.

Confidence

A numeric score in [0, 1] indicating how strongly FerroTeX believes a mapping or event interpretation is correct.

LSP

Language Server Protocol. FerroTeX uses LSP to publish diagnostics and editor features.

DAP

Debug Adapter Protocol. FerroTeX may use DAP for exploratory “debugging” semantics for TeX.

Concrete Syntax Tree (CST)

A lossless, fault-tolerant tree representation of the source code. Unlike an AST, it preserves all tokens, including whitespace and comments, ensuring that formatting is maintained during refactoring.

Abstract Machine

A specialized engine (ferrotex-analysis) that performs abstract interpretation of TeX macros. It models the “stomach” of TeX to predict macro expansion behavior without requiring a full engine run.

Virtual File System (VFS)

An abstraction layer that intercepts file I/O to isolate the TeX engine within the project root, preventing unauthorized filesystem access.

Capabilities-Based Security

A security model where permissions (e.g., read, write, execute) are explicitly granted as “capabilities” to a build context, rather than being determined by the user’s global system permissions.

Incremental Analysis

The process of re-analyzing only the portions of a document affected by a specific change, enabling keystroke-level feedback by minimizing re-computation.

Time-Travel Debugging

The ability to step backward through the macro expansion process. Enabled by snapshotting the state of the Abstract Machine at every expansion step.

Symbolic Execution

A method of analyzing mathematical environments by treating variables as symbols rather than concrete values, allowing for the detection of structural inconsistencies like matrix dimension mismatches.

Deprecated Command Diagnostic

A warning-severity LSP diagnostic emitted by ferrotexd when it detects a LaTeX 2.09 font command (\bf, \it, \rm, etc.), obsolete display math syntax ($$...$$), or a known-obsolete package (times, a4wide). Each diagnostic is paired with a quickfix code action that performs the mechanical replacement (e.g., {\bf text}\textbf{text}).