Hacker News new | ask | show | jobs
by michaelt_ 3634 days ago
You keep repeating the claim that `stack` exists in order to solve a problem deliberately created by the FPComplete crowd. This is frankly a really disturbing lie that has nothing to do with reality or the actual order of events. The theory that upper bounds should be eliminated - which was, I think, no good - is demonstrably independent of the FPComplete people. The theory of extreme restriction of bounds, the theory of eliminating upper bounds, and the existence of stack, stackage and so on are founded on real and genuine problems that arose with the appearance of immense builds like pandoc and especially yesod. I didn't particularly care for the stack business when it came along, but this is because I understood `cabal-install` pretty well, and still prefer it, but more importantly because I wasn't engaged in professional development that involved the co-operation of e.g. 100 Haskell packages - though I did spend countless hours helping new users get around the build problems with yesod and the like. It just is a fact that `cabal-install` was not ready for the existence of the phenomenon of the immense industrial Haskell build.
1 comments

>The theory that upper bounds should be eliminated - which was, I think, no good - is demonstrably independent of the FPComplete people.

No, it is not. Every FP complete employee does this. All of their packages are missing upper bounds. They actively promote not using upper bounds, writing blog posts and reddit comments telling people to violate the PVP. Just because they are not the only ones who do it, does not mean it is "independent" of them. They do it without fail, and they promote doing it to others.

>It just is a fact that `cabal-install` was not ready for the existence of the phenomenon of the immense industrial Haskell build.

That is not a fact, it is a fiction. Cabal-install did and still does work fantastically for our immense industrial haskell builds. Just broken packages like yesod were problems. And they were not problems with cabal-install, they were problems with people not understanding the consequences of no upper bounds, and expecting things that can not be possible to "just work". Stack did not solve this problem in any way, it simply bypassed it by restricting the set of packages to one curated set of versions.

So you maintain immense industrial Haskell builds, presumably for pay. Yet you expect other people, many of them volunteers, to take up the busywork of bounds maintenance, for free, so that your immense builds work.

Yesod is not broken. It builds just fine using a sane build tool. Yesod does not become broken because you insist on using a tool that crafts arbitrary build plans.

You should read up on the PvP before you comment on something you clearly don't understand well yet (unless you're knowingly misrepresenting the facts and using hyperbole on purpose in the interest of spreading FUD).
I understand every iota of the PVP.
Then I don't understand why you're deliberately spreading FUD about the PvP.
>Yet you expect other people, many of them volunteers, to take up the busywork of bounds maintenance, for free, so that your immense builds work.

I have no idea how you came up with that absurd non-sequitur.

>Yesod is not broken. It builds just fine using a sane build tool. Yesod does not become broken because you insist on using a tool that crafts arbitrary build plans.

Nothing in that is accurate at all. There is nothing arbitrary about a cabal build plan.

> > Yet you expect other people, many of them volunteers, to take up the busywork of bounds maintenance, for free, so that your immense builds work.

> I have no idea how you came up with that absurd non-sequitur.

You can dispute the accuracy, but "the PVP as written puts too much burden on maintainers" was a part of the justification at the time for removing upper bounds. See, for instance, the following from someone with no connection to FP Complete that I'm aware of: https://mail.haskell.org/pipermail/haskell-cafe/2012-August/...

"As someone who recurrently is nudging a large number of maintainers every major ghc release to bump their bounds, I favor the no upper bounds approach!"

It was not a non-sequitur, but an objection to your assertion that there was no problem with the PVP.

> See, for instance, the following from someone with no connection to FP Complete that I'm aware of

You may be interested to know that Carter (the guy you're quoting) knows better today, and has even become a Hackage Trustee whose mission is more or less to uphold those very PVP upper bounds ;-)

Amusing, but orthogonal to my point, which was that the move away from parts of the PVP was motivated by real concerns, and moreover that the comment above was specifically an obvious reference to concerns that had been voiced during that time.

I am not arguing that the move away from the PVP was correct - I was uncertain at the time and I remain uncertain.

> See, for instance, the following from someone with no connection to FP Complete that I'm aware of: https://mail.haskell.org/pipermail/haskell-cafe/2012-August/....

Yes, people make mistakes. He no longer favors that approach, as he learned how bad it is. The difference is that FPC employees still continue to push it even when they know the problems.

You seem to miss my point. I am not arguing that the move away from upper bounds was correct - I was uncertain at the time and I remain uncertain.

My point was that the comment above was specifically an obvious reference to concerns that had been voiced during that time (and speculation as to why they might have been less relevant to you) - far from an "absurd non-sequitur."

Since Yesod builds just fine, explain how it is "broken"?
The fallacy of that argument is assuming that tool X being able to build artifact Y means that X is "sane". The only thing this says is that tool X is able to build Y, nothing more and nothing less. For instance, I could easily implement a tool which is only capable to build `yesod`, and only `yesod`. Would that be a "sane" build-tool?
The question is historical. I think you can't have been making your immense industrial build in the years immediately preceding `Wed Aug 15 14:54:44 UTC 2012` when `yesod` signed on to Brian O'Sullivan's plan of omitting upper bounds throughout Hackage (a plan which on your view must itself have arisen from O'Sullivan's madness and incompetence or vested interest in a non-existent FPComplete that he never had anything to do with, since there was of course no problem at all, it was just a fiction he cooked up). `yesod`s 2012 act of compliance was on your view calculated by FPComplete (founded 2013) to take over Haskell by means of a then non-existent `stack` tool (2015). On that day, the installation of `yesod`, a perfectly innocent web-related library, required the installation of 145 distinct Hackage packages, as you can verify with a couple of commands. The previous record was held by the pandoc executable which in the form it took on that same fateful day (pandoc-1.9.4.2) required the installation of only 47 distinct packages. Yet in the previous years unlimited amounts of ink had been spilt on the pandoc list and #haskell explaining what was going wrong when pandoc users tried to build the newest version with the feature they had prayed for. With `yesod` things were now completely out of control. This had nothing whatsoever to do with `yesod` or anything else being in itself broken. `yesod` presumably did actually need e.g. `x509-validation` and `aeson-pretty`. Other packages went over to the plan announced by O'Sullivan too, though most of them reverted. --All of this, on your view, was part of a hostile take-over plan by the non-existent FPComplete. You are by the way of course benefitting from stackage in ways you are not recognizing, though, like me, you are not a regular stack user. It is very familiar that before stackage, there was much less coherence among the Hackage libraries. Things were best about one month after a new ghc was released.
I don't understand why you keep bringing up bos's question. How does one person wondering aloud if PVP is good or not make anything I've said inaccurate? As the bulk of your post is responding to a strawman you created, I'll allow you to provide the voice for it yourself.
It's clear that you weren't around then and don't have the historical knowledge necessary to have a view about this. This isn't stopping you from spreading absurd libels.
It is "clear" to you, because that is what you want to believe. You have no basis for that belief, it is incorrect and silly, but it makes you feel good because you think it allows you to dismiss what I said.
> Every FP complete employee does this.

And plenty of non FP Complete employees do this. What's your point?

Why are all of your replies in this thread empty of content?
It's not empty of content, it is devastating to your argument. Check out the upper bounds among these packages http://hackage.haskell.org/user/BryanOSullivan e.g. http://hackage.haskell.org/package/wreq ... there are some, same as there are some for e.g. http://hackage.haskell.org/package/http-client . Not that I approve of this.
It is completely irrelevant to my argument. My argument is "FP complete employees do X". Saying "so do some other people" changes nothing, it is completely and totally irrelevant. "The sky is blue." "Well so are my slippers! HAHA I devastated your argument!".
That wasn't your argument at all. I know and constantly affirmed that many people do and have removed upper bounds, and that I myself oppose it. Your 'argument' is the absurd falsification that this practice was introduced to sell BSD3 software that appeared 3 years after the practice was introduced, by a company that appeared over a year after the practice was introduced. What you are doing is unconscionable and destructive.