Live data from Hacker News

An opinionated guide to Haskell

lexi-lambda.github.io

11–20 of 96 posts

Re: An opinionated guide to Haskell

#11

I've tried messing around with haskell a few times, but the biggest problem I have is the tooling. I just tried to get haskell set up a few days ago and I couldn't get it working with either vscode or Idea. I also couldn't get ihaskell (jupyter notebook) installed successfully. I might give it another shot based on these instructions, but the fact that pretty much every program seems to make different assumptions abo…

ihaskell is a somewhat fragile project briding several disparate ecosystems/languages. I'm not really sure the value-add is there yet; in any case it is not a tool for beginners or the preferred method to get feedback from your programs.

Haskell proper is pretty turn-key these days with stack.

Stay away from edgelord / niche projects.

Stay away from most of the IDE tooling, including ghc-mod. You don't need to be fighting the tooling when starting. The repl and "ghcid" should be all you need (though I grant it takes some learning to use these as effectively if you're used to an IDE- you will learn with experience).

Just use the "ghcid" cli tool to get compile errors and feedback. It is rock solid.

https://github.com/ndmitchell/ghcid

Your experience will be much smoother.

It takes a bit getting used to if you're used to an IDE, but with Haskell it's usually a better to go for a multi-terminal/repl kind of setup

Re: An opinionated guide to Haskell

#12
post #10

I've tried messing around with haskell a few times, but the biggest problem I have is the tooling. I just tried to get haskell set up a few days ago and I couldn't get it working with either vscode or Idea. I also couldn't get ihaskell (jupyter notebook) installed successfully. I might give it another shot based on these instructions, but the fact that pretty much every program seems to make different assumptions abo…

It takes a while for the Haskell community to reach consensus. Stack is definitely recommended by almost everyone for both beginners and production projects. It is used on every project I’ve run in to lately. Sure there are different ways to configure it, but these days there’s really one way to get started. Just download stack, make a new project, and start coding

I get that Stack is what people should be using now but it's still not that helpful if I can't actually get actual instructions for setting up vscode, etc. based on using stack without "stack install."

The fact that haskell users seem to think these things are completely obvious and doesn't need to be explained is frankly a big part of the problem.

Re: An opinionated guide to Haskell

#13
post #11

I've tried messing around with haskell a few times, but the biggest problem I have is the tooling. I just tried to get haskell set up a few days ago and I couldn't get it working with either vscode or Idea. I also couldn't get ihaskell (jupyter notebook) installed successfully. I might give it another shot based on these instructions, but the fact that pretty much every program seems to make different assumptions abo…

ihaskell is a somewhat fragile project briding several disparate ecosystems/languages. I'm not really sure the value-add is there yet; in any case it is not a tool for beginners or the preferred method to get feedback from your programs. Haskell proper is pretty turn-key these days with stack. Stay away from edgelord / niche projects. Stay away from most of the IDE tooling, including ghc-mod. You don't need to be fig…

> Stay away from most of the IDE tooling. You don't need to be fighting the tooling when starting. The repl and "ghcid" should be all you need.

I'm honestly not sure I'm interested in learning haskell if this is considered an acceptable situation.

Re: An opinionated guide to Haskell

#14
post #11

I've tried messing around with haskell a few times, but the biggest problem I have is the tooling. I just tried to get haskell set up a few days ago and I couldn't get it working with either vscode or Idea. I also couldn't get ihaskell (jupyter notebook) installed successfully. I might give it another shot based on these instructions, but the fact that pretty much every program seems to make different assumptions abo…

ihaskell is a somewhat fragile project briding several disparate ecosystems/languages. I'm not really sure the value-add is there yet; in any case it is not a tool for beginners or the preferred method to get feedback from your programs. Haskell proper is pretty turn-key these days with stack. Stay away from edgelord / niche projects. Stay away from most of the IDE tooling, including ghc-mod. You don't need to be fig…

[deleted]

Re: An opinionated guide to Haskell

#15
post #10

Earlier quoted context omitted.

It takes a while for the Haskell community to reach consensus. Stack is definitely recommended by almost everyone for both beginners and production projects. It is used on every project I’ve run in to lately. Sure there are different ways to configure it, but these days there’s really one way to get started. Just download stack, make a new project, and start coding

I get that Stack is what people should be using now but it's still not that helpful if I can't actually get actual instructions for setting up vscode, etc. based on using stack without "stack install." The fact that haskell users seem to think these things are completely obvious and doesn't need to be explained is frankly a big part of the problem.

[deleted]

Re: An opinionated guide to Haskell

#16

I've tried messing around with haskell a few times, but the biggest problem I have is the tooling. I just tried to get haskell set up a few days ago and I couldn't get it working with either vscode or Idea. I also couldn't get ihaskell (jupyter notebook) installed successfully. I might give it another shot based on these instructions, but the fact that pretty much every program seems to make different assumptions abo…

Ocaml tooling has actually gotten substantially better over the past year or two.

VSCode as an editor that just works.

Opam for package management

JBuilder for managing builds.

Stdlib situation is still kind of a mess, but I think Base (which is just a stripped down Core) solves a lot of the current issues.

Re: An opinionated guide to Haskell

#17

I've tried messing around with haskell a few times, but the biggest problem I have is the tooling. I just tried to get haskell set up a few days ago and I couldn't get it working with either vscode or Idea. I also couldn't get ihaskell (jupyter notebook) installed successfully. I might give it another shot based on these instructions, but the fact that pretty much every program seems to make different assumptions abo…

How is Ocaml tooling worse than rust? Merlin is very powerful and it gives me everything i want from an editor integration.

I still can't get point-at type to work in emacs/vim for rust reliably(macros make it even worse).

Haskell tooling is good enough(i haven't worked on big projects, so maybe it doesn't scale) now with intero if you use emacs.

Re: An opinionated guide to Haskell

#18
post #10

Earlier quoted context omitted.

It takes a while for the Haskell community to reach consensus. Stack is definitely recommended by almost everyone for both beginners and production projects. It is used on every project I’ve run in to lately. Sure there are different ways to configure it, but these days there’s really one way to get started. Just download stack, make a new project, and start coding

I get that Stack is what people should be using now but it's still not that helpful if I can't actually get actual instructions for setting up vscode, etc. based on using stack without "stack install." The fact that haskell users seem to think these things are completely obvious and doesn't need to be explained is frankly a big part of the problem.

I have no idea how to configure vscode, but stack is really simple. This will get you started.

  stack new my-project
  cd my-project
  stack ghci 
  > main
http://seanhess.github.io/2015/08/04/practical-haskell-getti...

Haskell’s community evolved very differently from JS and the rest of open source. What seems simple to many isn’t necessarily what seems simple to the rest of us. Much of what this community considers simplicity is just convention and familiarity.

But so many people from our world are using it now that things are slowly becoming more “intuitive”!

I understand your frustration. It took me a lot of effort to get over the learning curve. Well worth it. But trust me, it’s easier than ever and getting better

Re: An opinionated guide to Haskell

#19
post #11

Earlier quoted context omitted.

ihaskell is a somewhat fragile project briding several disparate ecosystems/languages. I'm not really sure the value-add is there yet; in any case it is not a tool for beginners or the preferred method to get feedback from your programs. Haskell proper is pretty turn-key these days with stack. Stay away from edgelord / niche projects. Stay away from most of the IDE tooling, including ghc-mod. You don't need to be fig…

> Stay away from most of the IDE tooling. You don't need to be fighting the tooling when starting. The repl and "ghcid" should be all you need. I'm honestly not sure I'm interested in learning haskell if this is considered an acceptable situation.

In practice, it is an acceptable (as in, not great, but sufficient) solution.

It is annoying to not have the high quality of IDE tooling you'd enjoy with Java, but in contrast to Java you can be very productive in Haskell even without advanced IDEs (though you would be even more productive with them).

There will be IDE tooling eventually.

Re: An opinionated guide to Haskell

#20
post #11

Earlier quoted context omitted.

ihaskell is a somewhat fragile project briding several disparate ecosystems/languages. I'm not really sure the value-add is there yet; in any case it is not a tool for beginners or the preferred method to get feedback from your programs. Haskell proper is pretty turn-key these days with stack. Stay away from edgelord / niche projects. Stay away from most of the IDE tooling, including ghc-mod. You don't need to be fig…

> Stay away from most of the IDE tooling. You don't need to be fighting the tooling when starting. The repl and "ghcid" should be all you need. I'm honestly not sure I'm interested in learning haskell if this is considered an acceptable situation.

There is editor tooling, you can look at intero or dante for that. It works. My point is as a beginner, it is added friction when the focus should be on learning how to use the repl and the language. If you absolutely require an IDE, Haskell is probably not going to be your favorite language.
Post reply on HN