2017. április 5., szerda

Announcing Haskell Tools

The Beta version of Haskell Tools is released! You can use Haskell Tools to refactor your haskell code whether it is a set of cabal packages with hundreds of source files, or just a single module. It has an Atom plugin that enables you to use it in a rich development environment.


Currently 7 refactorings are supported, that are common tasks for a developer:

  • Rename a definition
  • Extract an expression as a binding
  • Inline a binding
  • Generate type signature for a binding
  • Organize imports of a module
  • Move a binding to an outer scope
  • Generate exports of a module

We tested the tool in the wild, refactoring packages on stackage. Our success rate is above 80%, so it is likely that your code can be successfully refactored with Haskell-tools.

Give it a try!

Haskell Tools - Haskell Tools in Atom

2017. január 18., szerda

Haskell Tools Refact

Haskell Tools Refact (ht-refact) is a refactoring tool for haskell. Refactoring means program transformation that keeps the semantics of a program, but improves the structure. So the refactored program can more flexible, shorter, easier to read or even faster than the original.

Haskell is a very good language for refactoring. One reason is that pure haskell functions cannot cause side effects. So in many occasions the program can safely be restructured, for example calls to functions can safely replaced with the bodies of the functions and vica versa.

The refactoring tool uses GHC as a backend, so it will always have the latest features and language extensions. It keeps the layout and comments of the original source code.

Check out the demo website, where you can try out the tool without the need to install anything.

Dear Haskellers!

I proudly announce the start of this blog. It is aimed for Haskell programmers around the world. Here I will write about a set of Haskell development tool named Haskell Tools that I'm currently working on, and especially about the refactoring tool called Haskell Tools Refact that I developed in the last year. This refactoring tool is now the main focus of this research & development project.

So I hope that you will enjoy the tools in your work or hobby projects. On this blog you will find news, tutorials, feature announcements for the tools.