Closed pharpend closed 9 years ago
- I'm not sure "need" is fair. I think it's more like "prefer", no? Like, people could use Vagrant or otherwise figure out how to install 7.8, but this is for avoiding that hassle.
I don't know about most people, but I tend to stay away from projects that require me to use some non-standard setup in order to contribute. It's why I shy away from all of this Vagrant nonsense.
- I think we need to document what, if anything, people need to do differently if they stick to 7.10 at this time. Do they need to avoid committing certain things? Are there any other differences or issues that they should know about?
On the mailing list, @chreekat voted for moving completely over to 7.10. Since I have full 7.10 support without breaking backward compatibility, I imagine @chreekat will just merge my branch. (There's an open pull request to do this).
The only real difference is that Applicative(..)
and Monoid(..)
have
been moved over to the Prelude
. So you no longer have to import
Control.Applicative
to get mappend
, mconcat
, or mempty
. Likewise
you get (<$>)
and (<*>)
as well. (Although those were already in the
Prelude
in the form of fmap
and ap
, respectively).
However, if you want to maintain backward compatibility with 7.8, if you use any of the monoid functions or applicative operators, you have to add something like this to the top of the file:
#if !(MIN_VERSION_base(4,8,0))
import Control.Applicative
import Data.Monoid
#endif
Note that Alternative(..)
and (<>)
still require the import of
Control.Applicative
and Data.Monoid
, respectively.
Re: "need", there's never been a requirement to run Vagrant but there's never a requirement not to run Vagrant. My point was the difference between "those who need 7.10" vs "those who prefer 7.10" since the former is not really accurate since Vagrant is an option at least. Or Halcyon for that matter.
But nevermind! I'm all for moving to 7.10. as the main thing, sounds great
So, pending the 7.10-as-default discussion, I'm gonna leave this PR hangin' for a bit. :)
Two thoughts: