π Mulang
A universal, multi-language, multi-paradigm code analyzer
Mulang is a tool for analysing source code, which is built on top of five main components:
- an Abstract Semantic Tree, an intermediate language which allows to express the semantic - as opposed to syntatic - structure of a multi-paradigm program;
- a set of more than 90 inspections for querying code querying code either explicitly - expectations - or implicitlt - smells.
- an Expectations Definition Language (EDL), a language for defining custom expectations
- a command line tool for analysing both source code in many languages and Mulang's AST. This tool is distributed as both a
linux-amd64
binary and a JavaScript package. See downloads section. - higher level interfaces in ruby and javascript that are easier to use and provides some additional capabilities like expectations parsing and automatic internationalized humanization.
Please the docs at the Mulang site.