<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <p><br>
    </p>
    <div class="moz-cite-prefix">On 2/5/20 8:17 AM, Carter Schonwald
      wrote:<br>
    </div>
    <blockquote type="cite"
cite="mid:CAHYVw0ztgdHX-x-bWfrB96HDbFy+s3VOOb8QZkzkTpde-fTfrQ@mail.gmail.com">
      <meta http-equiv="content-type" content="text/html; charset=UTF-8">
      <div>
        <div dir="auto">Applicative do notation ?</div>
      </div>
    </blockquote>
    <p>Probably not. See below.</p>
    <p><br>
    </p>
    <blockquote type="cite"
cite="mid:CAHYVw0ztgdHX-x-bWfrB96HDbFy+s3VOOb8QZkzkTpde-fTfrQ@mail.gmail.com">
      <div dir="auto"><br>
      </div>
      <div dir="auto">Doesn’t recent ghc also have source plugins ? I’m
        admittedly unfamiliar with those ?</div>
      <div dir="auto"><br>
      </div>
      <div dir="auto">Have you looked at how stuff like the ivory/tower
        edsl libraries do their embedding? </div>
      <div dir="auto"><br>
      </div>
    </blockquote>
    <p>I'm unaware of these. Thanks for the pointer.<br>
    </p>
    <p><br>
    </p>
    <blockquote type="cite"
cite="mid:CAHYVw0ztgdHX-x-bWfrB96HDbFy+s3VOOb8QZkzkTpde-fTfrQ@mail.gmail.com">
      <div dir="auto">Do you have enough examples for them to treat
        getting started as a “use your cookbook” and then go from there
        ?</div>
    </blockquote>
    <p>Haskell is already a stretch. Doing things like this:<br>
    </p>
    <p>a <- (b `and`) =<< not c<br>
    </p>
    <p>Is just never going to work.</p>
    <p>Keeping it in ANF:</p>
    <p>nc <- not c</p>
    <p>a <- b `and` nc</p>
    <p>Is easier to explain, but it is very hard to justify why you can
      only put the result of a single operation in a variable, and why
      sometimes it is "let" and other times it is that arrow.<br>
    </p>
    <p>Basically I'm asking people to give up expressions while they
      work just fine in C or Verilog. It's a step down. I really don't
      blame them.<br>
    </p>
    <br>
    <p><br>
    </p>
    <p><br>
    </p>
    <br>
  </body>
</html>