1 个仓库
Analysis of source code via intermediate representations to extract program properties and behavior.
Distinct from Undefined Behavior Analysis: Focuses on extracting behavior from an IR rather than runtime tracing or binary analysis
Explore 1 awesome GitHub repository matching programming languages & runtimes · Program Behavior Analysis. Refine with filters or upvote what's useful.
Semantic 是一个基于 Haskell 的库和命令行工具,专为多语言源代码分析而设计。它作为一个静态程序分析框架和多语言抽象语法树解析器,能够根据语法定义将多种编程语言转换为结构化的语法树。 该系统通过一个语义代码比较引擎脱颖而出,该引擎检测代码版本之间的结构和意义变化,而不是依赖文本差异。它进一步通过将表面语言转换为统一的多语言中间表示,实现了跨不同编程语法的分析。 该框架为解析 Rust、Go、Python、Ruby、PHP、TypeScript 和 TSX 等语言提供了广泛的功能。它涵盖了通过代码作用域映射、符号提取和语义图生成的语义分析,以及用于模式分析和程序行为评估的工具。 该工具集还包括用于标准化 Haskell 源代码文件布局的命令行实用程序。
Analyzes source code by interpreting an intermediate language to extract program behavior and properties.