[Haskell-cafe] [haskell-cafe] Some reflections on Haskell
Alejandro Serrano Mena
trupill at gmail.com
Tue Feb 14 20:05:55 CET 2012
2012/2/14 Doug McIlroy <doug at cs.dartmouth.edu>
> Kevin Jardine notices "the full Haskell ecosystem ... is huge", and
> laments the absence of "a sophisticated IDE to help manage" it.
> Being a small-code type, I don't personally enjoy IDE's, which
> are undeniably useful in big projects, at the cost of a whole lot
> more to learn about "programmering" in addition to programming.
There are now several IDEs (or development environments) that you may use
for Haskell programming: I personally work on EclipseFP (so the environment
is quite similar to Java), but there is also Leksah. I've seen people
making incredible things using Emacs and the Haskell modes, so I think
there is now quite nice support for Haskell programming.
Apart from that, Haskell Platform and cabal makes it easy to use Haskell
(at least as easy as PHP if you are using any of the LAMP packages in
Windows, or Perl or Python).
(Disclaimer: I'm currently one of the developers of EclipseFP)
> Nevertheless, I share Jardine's concern about the central problem.
> It is hard to find one's way in this ecosystem. It needn't be,
> as Java illustrates. To my mind Java's great contribution to the
> world is its library index--light years ahead of typical
> "documentation" one finds at haskell.org, which lacks the guiding
> hand of a flesh-and-blood librarian. In this matter, it
> seems, industrial curation can achieve clarity more easily than
> open source.
I disagree with that. For me, one of the best things about Haskell
community is Hackage, where I can actually find and browse package
documentation in a centralized way. In these days, Maven or Ivy (for
automatically resolving and getting Java dependencies) are seen as great
tools for Java ecosystem, and in Haskell we have that, with an even easier
way to add packages and new versions to the index!
Indeed, I find that Hackage enables a workflow not available in any other
programming language: say you don't find a feature in Hackage libraries.
Well, you can be pretty sure that no one has programmed a library for your
task (opposed to Java or .NET, where it may be a commercial library, and be
found somewhere random in the internet). Once you program it, you can
upload it to Hackage and share easily with the rest of the community.
Finally, even though we may argue about the point that "core" Java
libraries have better documentation that "core" Haskell libraries (although
libraries such as "container" even give complexity bounds to their
operations), I find better Haskell documentation for other different
resources: see the free-available "Learn you a Haskell", "Real World
Haskell" (just to name some tutorials), the Snap and Yesod documentation
(as opposed to the documentation of other web frameworks in the wild)...
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Haskell-Cafe