MISS_HIT is a compiler framework for the MATLAB and Octave
programming languages, and a set of tools for improving code
quality and correctness. MISS_HIT offers a variety of tools, for
any level of static analysis needed.
Tools (GPL Licensed)
- Style Checker - a simple style checker and code formatter. Can auto-fix most issues.
- Code Metrics - a simple code metric tool that supports many common code metrics.
Tools (AGPL Licensed)
Static analysis tools can be classified by three
properties. Any tools can have up to two of these properties,
but it is impossible to have all three for non-trivial source
languages (i.e. languages that contain loops):
- automatic: This means a tool does not require human intervention, such as loop invariants or precondition annotations.
- sound: This means a tool will never miss a bug. There could be false alarms, but every bug will be found.
- complete: This means a tool will never raise a false alarm. Any issue found is a real issue; but there is no guarantee that all issues will be found.
MISS_HIT offers a number of static analysis tools, depending
on your project needs:
MISS_HIT also provides some extra utilities not related to
static analysis that can be useful in large projects:
Language / Common
- Command-line interface - the shared command-line interface of all MISS_HIT tools.
- Configuration files - syntax and semantics of the MISS_HIT configuration files.
- Pragmas - a summary of all pragmas understood and processed by MISS_HIT.
Links
- MISS_HIT website
- GitHub repository
- Issue tracker
- PyPI MISS_HIT GPL package (Contains core compiler framework, mh_style, and mh_metric)
- PyPI MISS_HIT AGPL package (Contains mh_lint)
- DOI for MISS_HIT releases