pfff is a set of tools and APIs to perform some static analysis (e.g. to find bugs),
dynamic analysis, source code indexing, code search, code visualizations, code
navigations, or style-preserving source-to-source transformations such as
HTML, CSS, and preliminary support for C++, Rust, C#, Erlang, Lisp, Scheme, Haskell,
Python, OPA, Sql, and even TeX. There is also very good support for OCaml and noweb
(literate programming) so that pfff can be used on the code of pfff itself.