Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mumuki/mulang
:bamboo: Universal, Multi Language, Multi Paradigm code analyzer
https://github.com/mumuki/mulang
ast browser code-analysis educational functional haskell inspection java javascript languages logic-paradigm mulang-ast mumuki nodejs object-oriented prolog python ruby static-analysis
Last synced: 2 days ago
JSON representation
:bamboo: Universal, Multi Language, Multi Paradigm code analyzer
- Host: GitHub
- URL: https://github.com/mumuki/mulang
- Owner: mumuki
- License: gpl-3.0
- Created: 2016-01-24T13:35:15.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2023-08-24T02:41:58.000Z (over 1 year ago)
- Last Synced: 2024-10-30T06:56:56.764Z (3 months ago)
- Topics: ast, browser, code-analysis, educational, functional, haskell, inspection, java, javascript, languages, logic-paradigm, mulang-ast, mumuki, nodejs, object-oriented, prolog, python, ruby, static-analysis
- Language: Haskell
- Homepage: https://mumuki.github.io/mulang
- Size: 15.5 MB
- Stars: 124
- Watchers: 12
- Forks: 9
- Open Issues: 53
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
[![Build Status](https://travis-ci.org/mumuki/mulang.svg?branch=master)](https://travis-ci.org/mumuki/mulang)
# :bamboo: 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:
1. an [Abstract Semantic Tree](https://mumuki.github.io/mulang/astspec/), an intermediate language which allows to express the semantic - as opposed to syntatic - structure of a multi-paradigm program;
2. a set of more than 90 [inspections](https://mumuki.github.io/mulang/inspections) for querying code querying code either explicitly - _expectations_ - or implicitlt - _smells_.
3. an [Expectations Definition Language (EDL)](https://mumuki.github.io/mulang/edlspec), a language for defining custom expectations
4. a [command line tool](https://mumuki.github.io/mulang/clispec/) 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](https://github.com/mumuki/mulang/releases).
5. higher level interfaces in [ruby](https://rubygems.org/gems/mulang) and [javascript](https://www.npmjs.com/package/mulang) that are easier to use and provides some additional capabilities like expectations parsing and automatic internationalized humanization.Please the docs at [the Mulang site](https://mumuki.github.io/mulang/).
# Contributors
* Franco Bulgarelli @flbulgarelli @ [Mumuki](https://mumuki.org)
* Julian Berbel Alt @julian-berbel @ [Mumuki](https://mumuki.org)
* Federico Lochbaum @FedeLochbaum @ [UNQ](http://www.unq.edu.ar/)
* Lucas Traverso @ludat @ [10Pines](https://www.10pines.com)
* Federico Scarpa @fedescarpa @ [Mumuki](https://mumuki.org)