<div dir="ltr">Voting for option #4 for now, in order to give stack a longer test-of-time. Stack may evolve to be more universally adopted, or changes to cabal may alleviate the complaints about HP. It seems wise to see what happens and to limit the turn-over of preferred install options confronting new Haskellers.</div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Sep 24, 2015 at 3:43 PM, Adam Foltzer <span dir="ltr"><<a href="mailto:acfoltzer@gmail.com" target="_blank">acfoltzer@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">I am traveling/conferencing and cannot keep fully up to date with this conversation, but I'd like to appreciate the work of the folks contributing to this thread. I'm happy that the creation of this mailing list has opened up these processes to a broader audience. My preference here is option 4 for now, with the hope that the upcoming HP changes will render moot the split between these options.</div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Sep 24, 2015 at 2:22 PM, Boespflug, Mathieu <span dir="ltr"><<a href="mailto:m@tweag.io" target="_blank">m@tweag.io</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi John,<br>
<br>
this is a nice summary of all options. May I suggest the following<br>
refinements to the summaries:<br>
<br>
"<br>
There are three widely used ways to install the Haskell toolchain on<br>
supported platforms. Currently these are:<br>
<br>
* Minimal installers: install just GHC (the compiler) in a global<br>
location on your system, using your system's package manager. (On<br>
Windows and OS X, also installs build tools.)<br>
* Stack: nothing is installed globally, except the stack command.<br>
Stack is a project-centric build tool that will automatically download<br>
and manage compiler and library versions locally on a project by<br>
project basis.<br>
* Haskell Platform: installs all of GHC (the compiler), cabal-install<br>
(a build tool),  misc tools and a starter set of libraries in a global<br>
location on your system.<br>
<br>
If you opt for the minimal installer option for your platform, you'll<br>
likely still need to install one or more build tools (cabal-install or<br>
stack) separately.<br>
"<br>
<br>
The important point is that these options only differ in what gets<br>
installed globally, as opposed to (semantically speaking)<br>
locally-within-your-project (stack, cabal-install+sandboxes) or<br>
locally-within-your-homedir (cabal-install sans sandboxes). There<br>
ought be a paragraph somewhere near the top discussing upfront the<br>
tradeoffs, which include:<br>
<br>
* globally installed resources are conveniently and straightforwardly<br>
available to all users, and need only be downloaded once for all<br>
users. But,<br>
* globally installed resources are inflexible: it's hard to have<br>
multiple versions installed simultaneously, _because conflicts tend to<br>
arise_. This is particularly bad in the case of globally installed<br>
libraries.<br>
<br>
I think this paragraph should specifically mention the problems<br>
related to HP as it stands today. That paragraph can be removed once<br>
the HP no longer installs libraries globally.<br>
<br>
In my mind, it doesn't really matter what order things are in, from<br>
the moment that the main differentiators of each option are crisply<br>
and clearly defined. That said, the rationale behind the order above<br>
is:<br>
<br>
* minimal first, because that's what people normally expect (get the<br>
compiler, no bells and whistles).<br>
* HP last, because unless you're a student and the instructor<br>
specifically told you to download the HP, chances are you're going to<br>
run into trouble with this option (will change in the future, at which<br>
point we'll just have HP + minimal anyways).<br>
<br>
Any other order should work just as well.<br>
<div><div><br>
<br>
<br>
On 24 September 2015 at 07:20, John Wiegley <<a href="mailto:johnw@newartisans.com" target="_blank">johnw@newartisans.com</a>> wrote:<br>
> As mentioned earlier, I've been working on a draft version of the new Haskell<br>
> download page in consultation with Simon PJ, Michael Snoyman, and Gershom<br>
> Bazerman. The goal has been twofold:<br>
><br>
>   a) add stack as an explicit option, and<br>
><br>
>   b) add text to each option indicating clearly what it provides and where to<br>
>      get further help, so users can understand the options and make an<br>
>      informed choice.<br>
><br>
> We've sought to keep the text factual, rather than imply that one option is<br>
> "best" for any particular class of user, since opinions vary so widely on this<br>
> point.<br>
><br>
> At the following link, you'll find a draft version of the new page for<br>
> comment:<br>
><br>
>     <a href="https://gist.github.com/jwiegley/153d968ddfc9046ee4c9" rel="noreferrer" target="_blank">https://gist.github.com/jwiegley/153d968ddfc9046ee4c9</a><br>
><br>
> Hopefully it can go live on <a href="http://haskell.org" rel="noreferrer" target="_blank">haskell.org</a> next week, so please contribute your<br>
> edits here, or by pull request. The goal is to explain each option so that<br>
> people can make an informed decision.<br>
><br>
> However, the order of presentation does imply that whatever comes first is<br>
> "preferred" even if that is not the intent. The order currently given is HP,<br>
> Stack, Minimal. Chris has already made a few points about changing this order,<br>
> so let's continue that discussion and see where it leads us.<br>
><br>
> Bear in mind that this is (hopefully) only an interim state. The plan is to<br>
> add Stack to the Platform, and render the Platform minimal, which will<br>
> consolidate this page down to a single, recommended download path.<br>
><br>
> At the bottom of the gist are incomplete sections on third party libraries and<br>
> alternate installation approaches. These have yet to be written. The hope is<br>
> to resolve the top content first and sort the rest out after; however, ideas<br>
> for that content is most welcome too.<br>
><br>
> Thank you,<br>
>   John Wiegley<br>
> _______________________________________________<br>
> Haskell-community mailing list<br>
> <a href="mailto:Haskell-community@haskell.org" target="_blank">Haskell-community@haskell.org</a><br>
> <a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-community" rel="noreferrer" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-community</a><br>
_______________________________________________<br>
Haskell-community mailing list<br>
<a href="mailto:Haskell-community@haskell.org" target="_blank">Haskell-community@haskell.org</a><br>
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-community" rel="noreferrer" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-community</a><br>
</div></div></blockquote></div><br></div>
<br>_______________________________________________<br>
Haskell-community mailing list<br>
<a href="mailto:Haskell-community@haskell.org">Haskell-community@haskell.org</a><br>
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-community" rel="noreferrer" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-community</a><br>
<br></blockquote></div><br></div>