10 ms·
Haskell for Mac IDE
- nerdponx 9y agoThis is just what I needed. I love Vim and Emacs for daily work, but a good IDE is a fantastic learning tool. Looking forward to trying it!
- AJRF 9y agoThis looks awesome. On Friday I started going through "learn you a Haskell" and absolutely love the languages expressiveness and syntax. One thing that ticked me off a bit was that the package manager and build system (cabal and stack) were a bit incomprehensible to me, hopefully this packages everything up nicely. Indentation is a bit confusing in Haskell too, but this IDE has built in support for linting indentation.
- adamnemecek 9y agoYeah I always get stuck on cabal and stack.
- 3131s 9y agoI tried out Yesod and Snap a while back and while the frameworks themselves were pleasant to work with from what I could tell, I spent whole days messing with package management issues that would render my projects unrunnable after new installs. I couldn't see myself working with Haskell in production for a web project until that situation improves.
- fasquoika 9y agoAren't some Haskell developers also using Nix for dependency management?
- tikhonj 9y agoI use Nix and it's awesome, but still in early adopter territory. It works wonderfully if you really value reproducible builds and are willing to put some effort in the initial setup, but it's still a bit fiddly and documentation is nearly non-existent. If you have the time and motivation to learn about it up-front and get it set up it pays off, but I wouldn't recommend it to beginners just trying to learn Haskell.
- platz 9y agoHow long is a while back?
- 3131s 9y agoA couple months ago. I'll definitely give them another shot, but it was very non-exotic stuff like installing snaplet-postgresql-simple that sent two separate systems into dependency hell.
- platz 9y agoThat's pretty recent. I'm sure you're aware of stack , solves most 'dependency hell' issues. I'm not sure how much snap is maintained these days BTW, but definitely yesod is actively maintained and should have no dep issues there especially if using stack
- zzzzzzzza 9y agoFunny I do web dev, mostly haskell and javascript and feel like haskell is a solid rock and javascript is unbearable. Part of the explanation may be ease of initial interchangeability (javascript: oh yeah we can glue that to this no problem, it's all just like json or whatever man) versus maintainability (haskell: here is your type contract, the closest thing you can get in code to the fundamentalness and immutability of 2+2 =4).
- Buttons840 9y agoStack is the easier of the two, that may change with future cabal-install releases. Probably the hardest part is getting the cabal file setup correctly.
- beojan 9y agoStart with a stack template. For an application, the simple template is the easiest.
- adamnemecek 9y agoI’m not talking about authoring, I’m talking about including projects with stack. Idk if it ever worked without me spending at least 15 mind on it.
- beojan 9y agoIf you pick a stackage release that has all the packages you need, it's as simple as adding the package to your dependencies in the cabal file. If your stackage release doesn't have the package you need, you also need to add it to `extra-deps` in stack.yaml.
- andrewcarter 9y agoFunny that this would pop up, I just found it and bought it last week! I've been playing with Haskell recently and this app is perfect for playing with example code that you'll read in articles and books while learning. Another awesome resource is Hoogle https://www.haskell.org/hoogle/ https://www.haskell.org/hoogle/ It's super handy if you already have programming experience and are looking for a function that does a particular thing but you don't know what it's called. You can just put the type signature of what you want in the search box and it gives you back functions that'll do it!
- runeks 9y ago> Another awesome resource is Hoogle https://www.haskell.org/hoogle/ https://www.haskell.org/hoogle/ It's super handy if you already have programming experience and are looking for a function that does a particular thing but you don't know what it's called. Agreed. There's also Stackage's Hoogle, which will search through a ton of libraries as well (e.g. aeson, for JSON parsing): https://www.stackage.org/lts-7.24/hoogle https://www.stackage.org/lts-7.24/hoogle
- lachenmayer 9y agore. Hoogle, also check out Hayoo http://hayoo.fh-wedel.de/ http://hayoo.fh-wedel.de/ which adds a couple of nice features like typeahead & a 'view source' button.
- runeks 9y agoI use IntelliJ IDEA with the intellij-haskell plugin, which works to some extent, but is fairly slow -- not the least at startup, which can easily take five minutes. I'm afraid I won't be trying out this IDE, however, unless they offer a trial period (which I can't spot anywhere on the page). $30 isn't too much for a good IDE, but I'd like to try it out before paying in full, particularly since it seems to reinvent the IDE from the ground up, which makes me suspect a lot of the extra functionality, that more mature IDEs have, is missing.
- pthreads 9y agoAt the very bottom they have a link for the trial version (http://store.haskellformac.com/ http://store.haskellformac.com/)
- deleted 9y ago[deleted]
- amatecha 9y agoYeah, I'm using IntelliJ IDEA with intellij-haskell plugin as well! Works quite nicely, but my work is pretty trivial at the moment, so I'm not sure how it will hold up for something a bit more complicated. We shall see..!
- emilypi 9y agoThe IDE has great potential, and I've used it extensively for sandboxed and mini projects, but it's still not mature enough to replace any of the editors I'm already using (and I think they know that over at HfM). I'm definitely keeping an eye on it, and once they come up with better pre-existing project support, and possibly git integration, it will most definitely be a candidate for replacing atom or Emacs for me. The feel of it is just fantastic.
- indy 9y agoOut of curiosity, did you use the Intero package with Emacs? (https://commercialhaskell.github.io/intero/ https://commercialhaskell.github.io/intero/).
- mlevental 9y agoi know this is a haskell thread but after trying to grok haskell for years (yes i understand monads) i've discovered F# and jesus christ what a dramatic difference in functional language ergonomics and tooling and ecosystem. it has everything that haskell does (ADTs, type inference, immutability [when you want it], lazy [or eager] eval, pattern matching/destructuring, expression based, and partial application/curried functions) but it doesn't handcuff you to pure (side-effect free) code. say what you want but often writing code in haskell is monad acrobatics because you can't write a simple for loop or do i/o. the tooling is fantastic and cross platform (visual studio/xamarin) with a real debugger, real breakpoints, lightyears better docs, readable compiler errors, enormous ecosystem by way of interop with c# libraries. it's an eminently practical functional language. the `F# for fun and profit` series of blogposts is fantastic for not only introducing the language but explaining the value proposition of functional patterns. of course i wish ocaml had the same advantages (and it does have many) since it compiles to native binary but i'll accept the CLI in exchange for all the tooling benefits.
- bad_user 9y agoOn Hacker News I've noticed people read titles, then go to the comments section to dump whatever thought is on their minds, triggered by certain keywords like some game I used to play as a child, as an excuse to get something off their chest. It's very rude to pimp on other people's projects and articles to get something off your chest though. This article is not primarily about Haskell, but about a commercial IDE made by a guy named Manuel M T Chakravarty — which for me it's interesting, because it's an example of somebody that apparently makes something that he likes, helping an ecosystem and people give him money for it. So it's perfectly on topic for Hacker News and visitors of the comments section like myself, would like to see opinions related to this project. As for the comment, F# is a fine language, but reading the comparison I'm fairly certain that you haven't learned Haskell and I say this in order to help you — learning Haskell is the easiest path to practicing FP, which given your comment I'm fairly certain you don't grok yet, which keeps you back from being a good F# developer as well. That you haven't learned Haskell is more of a failure of Haskell's community — but there have been recent projects trying to address that. One is the Haskell for Mac project here in TFA, others are the Stack build tool and http://haskellbook.com http://haskellbook.com, a really good book meant for beginners.
- mark_l_watson 9y agoI bought this last year. Nice product. I usually use Emaces but the IDE works nicely for small bits of code and live programming.
- comment105 9y ago> Learn Functional Programming with Haskell Why would I pay $30? I can learn and use Haskell for $0. This feels like a typical mac os thing, pay for everything.
- aetherspawn 9y agoYou pay for good software, and a lot of Mac OS software is not just good, but great. I didn’t bat an eyelid when I bought Little Snitch, Alfred, Parallels, et al. and from the screenshots this looks like a nicely polished piece of software.
- comment105 9y ago> You pay for good software Hmmm, I don't like that statement. "Great software" is very subjective. I think linux is a great piece of software. I use a macbook for the great hardware but certainly not for the software! Apart from Sublime text all apps I use are free, including hundreds of CLI apps.
- jernfrost 9y agoSounds more like a religious belief than something which could be argued on merit. I use both Linux and macOS on a daily basis and there is just no question about which OS has the highest quality software eco system. I like Unix, which is why I use Linux and macOS. Linux because macOS is not an option and work, and I dislike non Unix systems like Windows. I like to have access to a powerful CLI. But lets face it. Once you step outside the CLI on Linux, it compares very poorly to macOS. Not only do you have far more choices for every type of app but most of those choices tend to be higher quality as well. Now let me qualify what I mean by quality. Many Linux apps does in fact have a significant amount of functionality. You got quite extensive packages such as Gimp and Inkwell. However these frequently have poorly designed UIs or UIs which are completely different from other applications, and frequently integrate poorly with the rest of the OS. You mentioned Sublime. Well guess what that came directly as a reaction to TextMate on macOS. There are dozens of these types of modern incarnations of vim and emacs on Mac. Fortunately now we have started getting some selection on Linux with sublime and atom. But it was kind of slow, and while both have quite good core functionality, they are a bit lacking in UI. You notice how a lot of successful apps on Linux have to rely on HTML based interfaces. Which means you kind of notice the UI is kind of slim. Last time I checked neither Sublime and Atom had any real UI for creating and modifying bundles/plugins.
- Szel 9y agoAnybody knows some nice IDE on Windows? Or is programming on Windows even worthwhile?
- icc97 9y agoI got Haskell + Emacs + Intero working on Windows [0] [0]: https://ianchanning.wordpress.com/2016/08/11/installing-haskell-emacs-on-windows/ https://ianchanning.wordpress.com/2016/08/11/installing-hask...
- donovanm 9y agoI've gotten vscode working well on Windows with the haskero plugin. You'll need to install stack for this to work correctly.
- saagarjha 9y ago> Haskell for Mac integrates Apple’s SpriteKit game engine including animations & physics. Interesting. How is this done? Is there a Haskell-style interface provided, or is it a thin veneer over the Objective-C API?
- jfoutz 9y agohttp://support.hfm.io/1.5/api/spritekit-0.9.0.2/Graphics-SpriteKit.html http://support.hfm.io/1.5/api/spritekit-0.9.0.2/Graphics-Spr...
- agentultra 9y agoI really like that it has SpriteKit integration but there are more practical, work-a-day framework bindings that would have sold me. The ideal world a Haskell IDE for Mac inspires is one in which I can build native macOS applications in Haskell. I hope it's on the radar.
- vortico 9y agoThe code examples in the five screenshots on the homepage are some of the first real-world use cases I've seen of "real" Haskell. It gives the impression of Haskell as a practical language other than an idealized clean-room experiment, so kudos to whoever wrote those!
- signal11 9y agoIIRC Haskell for Mac was created by @tacticalgrace who's an Australian CS professor: http://www.cse.unsw.edu.au/~chak/ http://www.cse.unsw.edu.au/~chak/ No idea if he created the demos though.
- deleted 9y ago[deleted]
- deleted 9y ago[deleted]
- amatecha 9y agoI finally updated to OS X Yosemite (10.10) and went to buy this app as I had been intending to once I updated, but unfortunately since I made those plans, Haskell for Mac now requires an even newer version of OS X :( Unfortunate... I'll have to stick with IntelliJ IDEA for now -- no plans to ever "upgrade" beyond Yosemite unless absolutely necessary.
- eicossa 9y agoWhy don't you want to upgrade beyond Yosemite ? I just bought a new Macbook Air and its been nagging me to update.
- Learn2win 9y agoHfM is great to play with and learn Haskell. For a real project, I use Haskell Vim IDE.