All Projects → hylang → Hydiomatic

hylang / Hydiomatic

The Hy Transformer

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Hydiomatic

Pep8speaks
A GitHub app to automatically review Python code style over Pull Requests
Stars: ✭ 546 (+740%)
Mutual labels:  static-code-analysis
Stacoan
StaCoAn is a crossplatform tool which aids developers, bugbounty hunters and ethical hackers performing static code analysis on mobile applications.
Stars: ✭ 707 (+987.69%)
Mutual labels:  static-code-analysis
Rubocop Packaging
A RuboCop extension focused on enforcing upstream best practices and coding conventions.
Stars: ✭ 29 (-55.38%)
Mutual labels:  static-code-analysis
Phpdoc Parser
Next-gen phpDoc parser with support for intersection types and generics
Stars: ✭ 569 (+775.38%)
Mutual labels:  static-code-analysis
Standard
🌟 JavaScript Style Guide, with linter & automatic code fixer
Stars: ✭ 26,433 (+40566.15%)
Mutual labels:  static-code-analysis
Eslint Plugin Node
Additional ESLint's rules for Node.js
Stars: ✭ 740 (+1038.46%)
Mutual labels:  static-code-analysis
Sonar Dotnet
Code analyzer for C# and VB.NET projects https://redirect.sonarsource.com/plugins/vbnet.html
Stars: ✭ 466 (+616.92%)
Mutual labels:  static-code-analysis
Flake8
The official GitHub mirror of https://gitlab.com/pycqa/flake8
Stars: ✭ 1,112 (+1610.77%)
Mutual labels:  static-code-analysis
Sonarjs
SonarSource Static Analyzer for JavaScript and TypeScript
Stars: ✭ 696 (+970.77%)
Mutual labels:  static-code-analysis
Cfmt
cfmt is a tool to wrap Go comments over a certain length to a new line.
Stars: ✭ 28 (-56.92%)
Mutual labels:  static-code-analysis
Phan
Phan is a static analyzer for PHP. Phan prefers to avoid false-positives and attempts to prove incorrectness rather than correctness.
Stars: ✭ 5,194 (+7890.77%)
Mutual labels:  static-code-analysis
Scalastyle
scalastyle
Stars: ✭ 679 (+944.62%)
Mutual labels:  static-code-analysis
Sonar Java
☕️ SonarSource Static Analyzer for Java Code Quality and Security
Stars: ✭ 745 (+1046.15%)
Mutual labels:  static-code-analysis
Security Code Scan
Vulnerability Patterns Detector for C# and VB.NET
Stars: ✭ 550 (+746.15%)
Mutual labels:  static-code-analysis
Devreplay
A linter that replay your developing style
Stars: ✭ 39 (-40%)
Mutual labels:  static-code-analysis
Phpcs Security Audit
phpcs-security-audit is a set of PHP_CodeSniffer rules that finds vulnerabilities and weaknesses related to security in PHP code
Stars: ✭ 525 (+707.69%)
Mutual labels:  static-code-analysis
Checkstyle
Checkstyle is a development tool to help programmers write Java code that adheres to a coding standard. By default it supports the Google Java Style Guide and Sun Code Conventions, but is highly configurable. It can be invoked with an ANT task and a command line program.
Stars: ✭ 6,481 (+9870.77%)
Mutual labels:  static-code-analysis
Kube Score
Kubernetes object analysis with recommendations for improved reliability and security
Stars: ✭ 1,128 (+1635.38%)
Mutual labels:  static-code-analysis
Tscancode
A static code analyzer for C++, C#, Lua
Stars: ✭ 1,112 (+1610.77%)
Mutual labels:  static-code-analysis
Eslint Plugin
ESLint configurations and additional rules for me
Stars: ✭ 19 (-70.77%)
Mutual labels:  static-code-analysis

Hydiomatic

Build Status Downloads Version

Hydiomatic is a static code analyser for Hy, that can analyse a form, and suggest a simplification, or a more idiomatic alternative.

The software is under heavy development, and has serious limitations, but it can already perform interesting transformations.

Installation

Hydiomatic depends on adderall, and can be installed the usual way with pip:

$ pip install -r requirements.txt

Usage

The library can be used either via the hydiomatic script:

$ hydiomatic -d FILENAME

or programmatically:

(import [hydiomatic.core [*]])

(simplify '(if (not (= 0 (- 1 1)))
             (do (print (+ 1 (+ 2 3)) [a b {"c" (+ a 1)}]))))
;=> (unless (zero? (dec 1))
;     (print (+ 1 2 3) [a b {"c" (inc a)}]))

For more information on what the script can do, run hydiomatic --help.

Example

Here's an example of Hydiomatic updating itself from an older Hy syntax:

$ git show 5d3c958:bin/hydiomatic.hy > old_hydiomatic.hy
$ hydiomatic -d old_hydiomatic.hy

License

All the code is licensed under the GNU Lesser General Public License (v3+).

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].