Según la solicitud de @Agos, convertí el comentario en una respuesta.
Primero, debo admitir que no estoy realmente bien informado en este campo. Sin embargo, le sugiero que lea los documentos Creación de analizadores amigables y Análisis incremental eficiente y flexible para tener una visión de qué algoritmos se utilizaron para el análisis incremental antes de 2000.
Para tratamientos actualizados, puede consultar estos documentos:
Más información: Hay (al menos) dos enfoques para el análisis / compilación:
- El lote enfoque, en el que se analiza todo el bloque de código / compilado.
- El enfoque incremental , en el que el documento primero se analiza / compila en el modo por lotes, y luego se detectan los cambios y se aplica el mínimo análisis / recompilación. Este enfoque no solo aumenta la velocidad de análisis / compilación, sino que también ayuda en las características ingeniosas de IDE, como la compilación en segundo plano , que está relacionada con la compilación diferida . (También puede buscar funciones comerciales como IntelliSense ).