架构和语义上:

    • 读取blobs。
    • 使用tree sitter(用于编程工具的增量解析系统)为这些blob生成解析树。
    • 将这些树赋给语法的一般表示形式。
    • 执行分析、计算差异或仅返回分析树。
    • 以多种支持的格式之一呈现输出。

    语义利用了许多有趣的算法和技术:

    • 本文描述的迈尔斯算法(SES)一种O(ND)差分算法及其变化
    • RWS-Diff:分层数据中灵活高效的变化检测。
    • 按顺序打开联合和数据类型。
    • 一种抽象定义解释器的实现,扩展为使用语法术语的 à la carte表示。