1 repositorio
Using protocol buffer schemas to define structured data types for source code and analysis results.
Distinct from Protobuf Code Generators: Distinct from general code generation by focusing on the semantic modeling of analysis results.
Explore 1 awesome GitHub repository matching development tools & productivity · Analysis Data Modeling. Refine with filters or upvote what's useful.
Semantic es una librería basada en Haskell y una herramienta de línea de comandos diseñada para el análisis de código fuente políglota. Funciona como un framework de análisis estático de programas y un analizador de árboles de sintaxis abstracta políglota que convierte múltiples lenguajes de programación en árboles de sintaxis estructurados basados en definiciones gramaticales. El sistema se distingue por un motor de comparación semántica de código que detecta cambios estructurales y significativos entre versiones de código en lugar de depender de diferencias textuales. Además, permite el análisis entre diferentes sintaxis de programación traduciendo lenguajes de superficie a una representación intermedia políglota unificada. El framework proporciona un amplio conjunto de capacidades para analizar lenguajes como Rust, Go, Python, Ruby, PHP, TypeScript y TSX. Cubre el análisis semántico mediante el mapeo del alcance del código, la extracción de símbolos y la generación de grafos semánticos, junto con herramientas para el análisis de patrones y la evaluación del comportamiento del programa. El conjunto de herramientas incluye utilidades de línea de comandos para estandarizar el diseño de archivos fuente de Haskell.
Uses protobuf schemas to define and generate structured data types for representing source code and semantic analysis results.