[Haskell-cafe] [ANN] acme-dont-1.2 - a "don't" construct

Jack Kelly jack at jackkelly.name
Wed Apr 1 20:49:23 UTC 2020


Dear Henk-Jan,

You can view the preprint yourself with the following commands:

$ true > dont.txt
$ less dont.txt

You'll then start seeing it everywhere you look, and I'm not sure that
wider distribution is possible.

-- Jack

"Henk-Jan van Tuyl" <b.vantuyl1 at upcmail.nl> writes:

> Thanks,
>
> The `don't` function is a big step forward in computering; it will
> surely prevent many bugs from occurring, with little effort to
> software developers.
>
> Is it published in a scientific magazine yet?
>
> Regards,
> Henk-Jan van Tuyl
>
>
> On Wed, 01 Apr 2020 10:38:08 +0200, Jack Kelly <jack at jackkelly.name> wrote:
>
>> Hello all,
>>
>> I have taken over the maintainership of acme-dont, and am pleased to
>> announce a new acme-dont release on Hackage[1].
>>
>>
>> acme-dont provides a `don't` function, which does not execute its
>> argument. For example, the following code will not print anything:
>>
>>     import Acme.Dont (don't)
>>
>>     quiet :: IO ()
>>     quiet = don't $ putStrLn "You'll never see this on stdout"
>>
>>
>> New in this release:
>>
>> * `don't` has been generalised from `Monad` to `Applicative`. If you
>>   have been waiting since GHC 8.0.1's release in 2016[2] to use
>> `don't` with
>>   `-XApplicativeDo`, wait no longer.
>>
>> * A test suite, to ensure that `don't` does not do anything. Previous
>>   versions could have been defined as `don't = void` for all we knew.
>>
>>
>> Also, the acme-dont community now has a new home on sourcehut. On there,
>> you can find the following invaluable resources:
>>
>> * A source repository[3], to track further developement and new ways of
>>   not doing things, with a commit history reconstructed from the release
>>   tarballs uploaded to Hackage.
>>
>> * A mailing list[4] for the acme-dont community to discuss the best ways
>>   of not doing things.
>>
>> * A bug tracker[5] to handle reports, in case someone observes acme-dont
>>   doing something.
>>
>> * Continuous integration[6], to ensure that acme-dont continues to not
>>   do things across multiple versions of GHC.
>>
>>
>> I would like to thank Gracjan Polak for uploading the initial releases
>> of `acme-dont`, and for maintaining the package these past eleven
>> years. I do not intend to betray the responsibility he has assigned me
>> in handing over this critical package.
>>
>> Best,
>>
>> -- Jack
>>
>> [1]: https://hackage.haskell.org/package/acme-dont-1.2
>> [2]: https://www.haskell.org/ghc/download_ghc_8_0_1
>> [3]: https://git.sr.ht/~jack/acme-dont
>> [4]: https://lists.sr.ht/~jack/acme-dont-discuss
>> [5]: https://todo.sr.ht/~jack/acme-dont
>> [6]: https://builds.sr.ht/~jack/acme-dont
>> _______________________________________________
>> Haskell-Cafe mailing list
>> To (un)subscribe, modify options or view archives go to:
>> http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe
>> Only members subscribed via the mailman list are allowed to post.


More information about the Haskell-Cafe mailing list