[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