Monad of no `return` Proposal (MRP): Moving `return` out of `Monad`

Greg Weber greg at gregweber.info
Fri Sep 25 15:50:22 UTC 2015


yes, an automated upgrade would need to do a backwards compatible upgrade
(inserrt macros, etc)

On Fri, Sep 25, 2015 at 8:46 AM, David Feuer <david.feuer at gmail.com> wrote:

> It *should* be possible to recognize
>
> return = pure
> return x = pure x
> pure = return
> pure x = return x
> and also cases where pure and return are defined the same up to alpha
> equivalence. It should also be possible to fix this up automatically, but
> there are several different fixes that programmers may want. Many package
> maintainers strive to support old GHC versions--some as far back as
> 7.0--and a few even try to keep their code running in Hugs, although that
> seems a bit silly. Those maintainers will probably want to use
> MIN_VERSION_base to maintain backwards compatibility. Some of those
> packages (e.g., containers) approximate fake versions of that macro for
> non-cabal compilation, but such conditional definitions may occur in each
> file separately or in a global include file.
> On Sep 25, 2015 11:35 AM, "Greg Weber" <greg at gregweber.info> wrote:
>
>> Is the upgrade automatable with tooling that analyzes Haskell source code?
>> If so can we provide an executable that will automatically upgrade
>> packages?
>> Pull requests could even be sent automatically.
>>
>> On Fri, Sep 25, 2015 at 5:02 AM, Alexander Berntsen <alexander at plaimi.net
>> > wrote:
>>
>>> -----BEGIN PGP SIGNED MESSAGE-----
>>> Hash: SHA512
>>>
>>> Enthusiastic +1 from me too, of course.
>>>
>>> - --
>>> Alexander
>>> alexander at plaimi.net
>>> https://secure.plaimi.net/~alexander
>>> -----BEGIN PGP SIGNATURE-----
>>> Version: GnuPG v2
>>>
>>> iQIcBAEBCgAGBQJWBTfiAAoJENQqWdRUGk8BU00QAMQfZo07CKomsjqcwNCDNqdm
>>> ifIhiz2kldR+A/gp6t/8IRf0RG3ZgZfwxhR5s/BWt7yV28napZfTMHPTfV8gE+bm
>>> V8AzvsXe/XLa9gTDyxqnY+ovYBDnEqmbX3SU03rRdtcN3jHiNuFkfIEIkRx6+HVx
>>> BKfoebxD7r1tgs/4nxjD8HljJEh6W8ux2Q8+sMWiCJEbVN5ixzTzGSk28vT2Ldyl
>>> GkoZJoXYM4K3WVCn23UmH9eokbdbnaCu2WRqzGgM7eQf+qqpouSjE3KRL5d9O/pE
>>> NMJIrNkC1L613GpfNeHLikOCKd78vbT0xnXyKHwAxv4Cr/7IZI3dyu+5MYwFntrY
>>> cdX7PgNQw7RN/tvZ63OOaRQEqvQfiOSdhPdFxAF5MabPNYMZMjIHqJuQseBaiUJf
>>> SWOU9oYNWW7XQVaQRVS5bP0KvRUhsA2+QXEd6pnhBEZ6u7qRQhaJowjca/A1TbB/
>>> LHVG9nXE04fvc+CRkMK/xZEbuNWiMF0p4CZUiyeuAzhcZ9dge367ExfrTpTSLz8O
>>> Gfh04LgWs3rnvc3w8yhJJjcfsHhYZKQJMv40Rn8dgE/hyGFRpwQvBvFolZtFBZiS
>>> h6A/MyLDaSJCw3jwj+cU5PGLULGzdfNnTRlJ/jb4/CD2xUEOaQcAd+NvIJOlREcK
>>> RZBk4o5MU1aCsujOzjRd
>>> =VfnC
>>> -----END PGP SIGNATURE-----
>>> _______________________________________________
>>> Libraries mailing list
>>> Libraries at haskell.org
>>> http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries
>>>
>>
>>
>> _______________________________________________
>> Libraries mailing list
>> Libraries at haskell.org
>> http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries
>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/libraries/attachments/20150925/bf145347/attachment.html>


More information about the Libraries mailing list