cabal-fmt
An experiment of formatting .cabal files (by phadej)
haskell-language-server
Official haskell ide support via language server (LSP). Successor of ghcide & haskell-ide-engine. (by haskell)
Our great sponsors
- Onboard AI - Learn any GitHub repo in 59 seconds
- InfluxDB - Collect and Analyze Billions of Data Points in Real Time
- SaaSHub - Software Alternatives and Reviews
cabal-fmt | haskell-language-server | |
---|---|---|
2 | 109 | |
103 | 2,451 | |
- | 0.4% | |
0.0 | 0.0 | |
about 2 months ago | 5 days ago | |
Haskell | Haskell | |
BSD 1-Clause License | Apache License 2.0 |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
cabal-fmt
Posts with mentions or reviews of cabal-fmt.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-06-27.
-
Is there some truth to this hyperbole? "Haskell is beautiful and elegant, but unmaintainable and painful"
It kinda is, but it's a one-time thing and it gives us the ability to map module names to packages by only looking at the index. Plus, the list can be generated: cabal-fmt has an expand feature, and in the future HLS could do that too.
haskell-language-server
Posts with mentions or reviews of haskell-language-server.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-07-12.
-
Haskellers who moved to Rust: What has been your experience?
The Haskell community has been focusing on tooling and IDE support in the last several years. Haskell-Language-Server is a huge improvment, so the experience is probably much better than you remember, but it'll still be a while before it catches up with Rust.
- HLS 2.0.0.0 is out
-
Static-ls - a low memory Haskell language server based on hiedb and hiefiles
static-ls is a low memory language server for Haskell that serves as an alternative to (hls)[https://github.com/haskell/haskell-language-server] with less functionality by using statically generated information. It is intended for (Highly recommend hls instead if you aren't having these issues):
- Any open source projects to contribute to for beginners
-
Haskell is a good, useful, and practical programming language.
Indeed, there is a lot of room for improvements. But I just wanted to acknowledge and thank the work of those involved in HLS which IMHO was a game changer in that regard.
-
No HLS support for the "recommended" 9.2.5?
Specifically, gchup and HLS are both opensource community efforts. If you want to see HLS work with ghc-9.2.5, you may want to ask https://github.com/haskell/haskell-language-server or, better, provide them a PR that builds HLS with ghc-9.2.5.
-
dev environment for windows
Sadly ghcup tui is not available on windows, but you can check the available versions with ghcup list. Hls lists the compatible versions of ghc at their github releases. For 1.8.0.0 I went with 9.4.2. To install it and set it to default you have to use the ghcup install ghc 9.4.2 then the ghcup set ghc 9.4.2. Hopefully this will be useful to someone with the same problem.
-
HLS issues an error for Setup.hs and Spec.hs (using hspec-discover)
Here's an issue I created for it: https://github.com/haskell/haskell-language-server/issues/3348
-
Transform your old and tired Haskell source files in shining Notebooks
The code is executed by HLS, see https://github.com/haskell/haskell-language-server/blob/master/plugins/hls-eval-plugin/README.md and then its markdown/html output is displayed by VS Code.
-
What is the correct way to compile non-haskell sourcefiles in a cabal project.
As you can see there, Shake is also a good fit for Cabal scripts. And Cabal scripts work better in 3.8. There are still issues loading them with HLS, but hopefully not for long. For this reason, I also have a build.sh which wraps that, allowing the script to be loaded via GHC directly, but I look forward to being able to remove this.
What are some alternatives?
When comparing cabal-fmt and haskell-language-server you can also consider the following projects:
coc.nvim - Nodejs extension host for vim & neovim, load extensions like VSCode and host language servers.
neovim - Vim-fork focused on extensibility and usability
lsp-mode - Emacs client/library for the Language Server Protocol
ormolu - A formatter for Haskell source code
vscode-haskell - VS Code extension for Haskell, powered by haskell-language-server
hie-bios - Set up a GHC API session for various Haskell Projects
lsp-haskell - lsp-mode :heart: haskell
stack - The Haskell Tool Stack
ghc-proposals - Proposed compiler and language changes for GHC and GHC/Haskell
hlint - Haskell source code suggestions
leksah - Haskell IDE
xmonad-testing - Stack/cabal setup for testing xmonad* and configurations