ghcup-hs
THIS REPO IS A MIRROR, BUG REPORTS GO HERE: (by haskell)
haskell-language-server
Official haskell ide support via language server (LSP). Successor of ghcide & haskell-ide-engine. (by haskell)
Our great sponsors
ghcup-hs | haskell-language-server | |
---|---|---|
24 | 110 | |
244 | 2,557 | |
2.9% | 1.3% | |
9.4 | 9.6 | |
7 days ago | 3 days ago | |
Haskell | Haskell | |
GNU Lesser General Public License v3.0 only | 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.
ghcup-hs
Posts with mentions or reviews of ghcup-hs.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2024-01-15.
-
Revisiting Haskell after 10 years
The compiler now shows more helpful error messages and GHCup allows us to manage multiple versions of GHC, Stack, and HLS (Haskell Language Server) in a breeze. Compilation time is faster now, but I believe it is because hardware has become faster over the years. Unfortunately, cross-compiling is not yet as simple.
-
-❄️- 2023 Day 5 Solutions -❄️-
Install Haskell using GHCup. In days of old installing Haskell used to be a pain, but nowadays Haskell comes with a self-isolated thing call ghcup - you install it once, and then it installs the rest of the universe in its own isolated directory that can be independently deleted or updated without affecting the rest of your system.
-
Need Help with getting Haskell onto my Windows Laptop
Try this https://www.haskell.org/ghcup/ but with Window's WSL2.
-
Neovim: How to get variable type hinting?
I have been using helix with ghcup installed ghc(s) and language servers. It works with Haskell out of box, no configuration necessary. Helix is a modal editor, similar to but distinctly different from the vi family. Although a long time vim user I have found the switch to helix not too difficult and definitely worth the trouble.
- Haskell ecosystem questions.
-
Haskell IDE setup
makefile_dir := $(dir $(abspath $(lastword $(MAKEFILE_LIST)))) export PATH := $(makefile_dir):$(PATH) project_name ?= project_main ?= src/.hs retag_file ?= $(project_main) stack.yaml: @test -f stack.yaml || (echo -e "This makefile requires a 'stack.yaml' for your project.\nYou don't need to use 'stack' to build your project.\nYou just need a 'stack.yaml' specifying a resolver compatible with your GHC version.\nSee https://www.stackage.org/" && exit 1) stack: stack.yaml @which stack || (echo -e "This makefile requires 'stack' to be on your path. Use GHCup to install it.\nSee https://www.haskell.org/ghcup/" && exit 1) .PHONY: stack warning.txt: -@uname -a | grep -q Darwin && echo "WARNING: On Mac, you must alias 'make' to 'gmake' in your shell config file (e.g. ~/.bashrc or ~/.zshrc). Symbolic links will not work." | tee warning.txt @echo "Add 'warning.txt' to your .gitignore file if you never want to see this message again." hasktags: warning.txt stack @echo 'stack exec -- hasktags' > hasktags @chmod +x hasktags @echo "You might like to add 'hasktags' to your .gitignore file." format: stack @stack exec -- fourmolu --stdin-input-file $(project_main) .PHONY: format retag: warning.txt stack @stack exec -- haskdogs -i $(retag_file) --hasktags-args "-x -c -a" | sort -u -o tags tags .PHONY: retag tags: warning.txt hasktags stack @stack exec -- haskdogs .PHONY: tags ghcid: stack @stack exec -- ghcid \ --command 'stack repl --ghc-options "-fno-code -fno-break-on-exception -fno-break-on-error -v1 -ferror-spans -j"' \ --restart stack.yaml \ --restart $(project_name).cabal \ --warnings \ --outputfile ./ghcid.txt .PHONY: ghcid
- Any open source projects to contribute to for beginners
-
I want to move from linux to bsd
I don't know what FreeBSD's reasons for removing Haskell from the ports tree was -- but in any case, Haskell likes to have its own development & runtime environments. The recommended method (for Linux, as well as FreeBSD) to install the package managers (cabal & stack), & the toolchain nowadays is 'ghcup': https://www.haskell.org/ghcup/
-
Already learned Scala syntax. Should the next book be "SICP" or "Function Programming in Scala"?
If you want a solid understanding of FP and not just FP in Scala, I highly recommend installing GHCup and working through Haskell Programming From First Principles. Then I would work through Scala With Cats, Essential Effects, and Practical FP in Scala for how all of that maps onto Scala.
-
[ANN] GHCup-0.1.19.0 released
Follow the instructions here: GHCup
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 2024-01-15.
-
Revisiting Haskell after 10 years
The advent of language server protocol made possible the creation of HLS (Haskell Language Server), and there are plugins for many editors, such as vscode-haskell, that allow you to have auto-complete, auto-import, and automatic function signatures—also available to your editor of choice. The whole feedback loop of editing, compiling, and running is greatly improved.
-
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 are some alternatives?
When comparing ghcup-hs and haskell-language-server you can also consider the following projects:
stack - The Haskell Tool Stack
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
ghc-proposals - Proposed compiler and language changes for GHC and GHC/Haskell
hlint - Haskell source code suggestions
leksah - Haskell IDE