[Haskell-cafe] What is your favourite Haskell "aha" moment?

Vanessa McHale vanessa.mchale at iohk.io
Thu Jul 12 01:59:12 UTC 2018


I'm not sure I follow. Do you mean that IO is not a monad because
equivalence of values cannot be defined? Or is it something deeper?

On 07/11/2018 05:19 PM, Conal Elliott wrote:
> > The fact that you can define the IO monad in Haskell was quite a
> revelation.
>
> But it's *not* a fact. It's a lie. And one of the most devious sort,
> since the source code appears to agree. The purported definition
> couldn't possibly explain concurrency.
>
> On Wed, Jul 11, 2018 at 7:21 AM, Vanessa McHale
> <vanessa.mchale at iohk.io <mailto:vanessa.mchale at iohk.io>> wrote:
>
>     I find it quite elegant! The fact that you can define the IO monad
>     in Haskell was quite a revelation. And it's especially nice when
>     paired with a demonstration of C FFI (where you might *need* to
>     sequence side effects such as freeing a value after it has been read).
>
>     newtypeIO
>     <http://hackage.haskell.org/package/ghc-prim-0.5.2.0/docs/src/GHC.Types.html#IO>a
>     <http://hackage.haskell.org/package/ghc-prim-0.5.2.0/docs/src/GHC.Types.html#local-6989586621679009802>=IO
>     <http://hackage.haskell.org/package/ghc-prim-0.5.2.0/docs/src/GHC.Types.html#IO>(State#
>     <http://hackage.haskell.org/package/ghc-prim-0.5.2.0/docs/src/GHC.Prim.html#State%23>RealWorld
>     <http://hackage.haskell.org/package/ghc-prim-0.5.2.0/docs/src/GHC.Prim.html#RealWorld>->(#State#
>     <http://hackage.haskell.org/package/ghc-prim-0.5.2.0/docs/src/GHC.Prim.html#State%23>RealWorld
>     <http://hackage.haskell.org/package/ghc-prim-0.5.2.0/docs/src/GHC.Prim.html#RealWorld>,a
>     <http://hackage.haskell.org/package/ghc-prim-0.5.2.0/docs/src/GHC.Types.html#local-6989586621679009802>#))
>
>
>     On 07/11/2018 09:14 AM, Stefan Monnier wrote:
>>>     In a few weeks I'm giving a talk to a bunch of genomics folk at the Sanger
>>>     Institute<https://www.sanger.ac.uk/> <https://www.sanger.ac.uk/> about Haskell.   They do lots of
>>>     programming, but they aren't computer scientists.
>>>     I can tell them plenty about Haskell, but I'm ill-equipped to answer the
>>>     main question in their minds: why should I even care about Haskell?  I'm too
>>>     much of a biased witness.
>>     I don't much like the monad solution for side-effects, but if those guys
>>     might have some knowledge of the horror of concurrent programming with
>>     locks, the STM system would be a good candidate.
>>
>>
>>             Stefan
>>
>>     _______________________________________________
>>     Haskell-Cafe mailing list
>>     To (un)subscribe, modify options or view archives go to:
>>     http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe
>>     <http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe>
>>     Only members subscribed via the mailman list are allowed to post.
>
>     -- 
>
>
>
>     *Vanessa McHale*
>     Functional Compiler Engineer | Chicago, IL
>
>     Website: www.iohk.io <http://iohk.io>
>     Twitter: @vamchale
>     PGP Key ID: 4209B7B5
>
>     Input Output <http://iohk.io>
>
>     Twitter <https://twitter.com/InputOutputHK> Github
>     <https://github.com/input-output-hk> LinkedIn
>     <https://www.linkedin.com/company/input-output-global>
>
>
>     This e-mail and any file transmitted with it are confidential and
>     intended solely for the use of the recipient(s) to whom it is
>     addressed. Dissemination, distribution, and/or copying of the
>     transmission by anyone other than the intended recipient(s) is
>     prohibited. If you have received this transmission in error please
>     notify IOHK immediately and delete it from your system. E-mail
>     transmissions cannot be guaranteed to be secure or error free. We
>     do not accept liability for any loss, damage, or error arising
>     from this transmission
>
>     _______________________________________________
>     Haskell-Cafe mailing list
>     To (un)subscribe, modify options or view archives go to:
>     http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe
>     <http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe>
>     Only members subscribed via the mailman list are allowed to post.
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20180711/05e203c2/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: OpenPGP digital signature
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20180711/05e203c2/attachment.sig>


More information about the Haskell-Cafe mailing list