josefs/Gradualizer
Gradualizer is a static type-checking tool for Erlang that performs constraint-based type inference and exhaustiveness analysis. It provides a command-line interface and library API to validate Erlang code against user-defined and standard library type specifications. The system supports advanced features such as polymorphic call inference, type refinement, and intersection types, while also tracking known limitations through a comprehensive suite of passing and failing test cases.
65.7
Adequate · 6 August 2026
10k
lines of production code
Erlang
primary language
2
bus factor · 31 authors in all
4
measurements over time
How it got here
2017–2018 · Initial project scaffolding and type inference
This period established the project's foundational infrastructure, including CI workflows, documentation, and the core constraint-based type inference engine. It simultaneously built out a comprehensive test suite to validate type checking, pattern matching, and error handling across various Erlang constructs.
12 changes
2019–2023 · Type system expansion and test coverage
This period focused on expanding the Gradualizer's type system by introducing new annotation and assertion macros, alongside refining type specifications for OTP core and standard library modules. The work was supported by comprehensive test coverage, including property-based tests and helper modules, to ensure the correctness of type checking and error reporting.
6 changes
Survey your own repository
josefs/Gradualizer was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point the surveyor at a repository you know and see whether you agree with it.
About this page
- The description of this project is derived from its own commit history, not from its README.
- The score is its highest published measurement, taken on 6 August 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
- Measured at commit 23533d7eb7 — the exact code this score is about.
- Scored under rubric rubric-2026.08.19. Score the same commit under that rubric and you get the same number.