haskell-tools-ast-gen alternatives and similar packages
Based on the "Language" category.
Alternatively, view haskell-tools-ast alternatives based on common mentions on social networks and blogs.
-
elm-compiler
Compiler for Elm, a functional language for reliable webapps. -
purescript
A strongly-typed language that compiles to JavaScript -
stylish-haskell
Haskell code prettifier [Moved to: https://github.com/haskell/stylish-haskell] -
elm-reactor
Interactive development tool for Elm programs -
haskell-src-exts
Manipulating Haskell source: abstract syntax, lexer, parser, and pretty-printer -
language-javascript
Parser for JavaScript, in Haskell -
frp-arduino
Arduino programming without the hassle of C. -
haskell-tools-ast-fromghc
Developer tools for Haskell -
nirum
Nirum: IDL compiler and RPC/distributed object framework for microservices -
language-python
A parser for Python 2.x and 3.x written in Haskell -
liquid-fixpoint
Horn Clause Constraint Solving for Liquid Types -
elm-export
Create Elm types and JSON decoders from Haskell source. -
shentong
A Haskell implementation of the Shen programming language. -
tal
An implementation of Typed Assembly Language (Morrisett, Walker, Crary, Glew) -
camfort
Light-weight verification and transformation tools for Fortran -
type-of-html
High performance type safe html generation -
language-c-quote
C/CUDA/OpenCL/Objective-C quasiquoting library. -
exference
Haskell tool to generate expressions from types -
language-rust
Parser and pretty-printer for the Rust language -
language-ecmascript
Haskell library: ECMAScript parser, pretty-printer and additional tools -
fortran-src
Fortran parsing and static analysis infrastructure -
formura
Describe stencil formurae without even translating them -
aterm-utils
Utility functions for working with aterms as generated by Minitermite -
homplexity
Haskell code complexity and quality measurement -
ministg
Ministg is an interpreter for a high-level, small-step, operational semantics for the STG machine. -
purescript-tsd-gen
TypeScript Declaration File (.d.ts) generator for PureScript -
haskell-names
Haskell suite library for name resolution
Collect and Analyze Billions of Data Points in Real Time
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of haskell-tools-ast-gen or a related project?
README
[Travis](documentation/Haskelltools.png)
The goal of this project is to create developer tools for the functional programming language Haskell. Currently this project is about refactoring Haskell programs. We have a couple of refactorings working, with support for using them in your editor, or programmatically from command line.
Demo We have a live online demo that you can try
[Installation instructions](documentation/installation.md)
- The package is available from hackage and stackage
stack install haskell-tools-daemon haskell-tools-cli --resolver=nightly-[current-date]
- When we are not yet on the latest GHC, the only way to install the latest version is to clone this repository and
stack install
it. See the stackage nightly badge above.
User manuals
- Use in editor: Atom, Sublime (Coming soon...)
- [Official implemented refactorings](documentation/refactorings.md): The detailed description of the officialy refactorings supported by Haskell-tools Refactor.
- [ht-refact](documentation/ht-refact.md): A command-line refactorer tool for standalone use.
- [haskell-tools-demo](documentation/haskell-tools-demo.md): An interactive web-based demo tool for Haskell Tools.
Contribute
How to contribute to the Haskell-tools project?
If you encounter a problem, [reporting bugs](documentation/report-bugs.md) always helps us.
If you want to help us by making new tools, refactorings or improving existings ones, here are some useful resources for you.
- We have a [general overview](documentation/development/framework-overview.md) of the framework, to let you understand the architecture.
- The [refactoring packages](documentation/development/packages.md) describes how the functionality of the framework is distributed between several packages.
- A collection of [programming tips](documentation/development/general-tips.md) may help you use the framework as it was intended.
- The [project information](documentation/development/project-info.md) page tells how to run, test your code, what are the coding and versioning conventions.
- You can access the API documentation of the last build, and the latest release.
Write your own refactorings
- Check out the [Tutorials](documentation/development/tutorials.md) for the know-how of refactorings. Please check the reference tutorial also.
- [Guide for writing refactorings](documentation/development/refactoring-guide.md).
- [Limitations](documentation/development/limitations.md)
Write other tools working with Haskell-tools
(Comming soon...)
Integrate the tool with your favourite editor.
By implementing a client to handle a simple protocol you can make your favourite editor work with Haskell-tools. Check out the [editor integration](documentation/development/editor-integration.md) tutorial.
Help to improve the framework
[This section](documentation/development/framework-improvement.md) is for those of you who want to improve the framework to help your refactorings and tools. The [limitations](documentation/development/limitations.md) section could be a good start where to improve the system.