<html>
  <head>
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
    <style id="EHTipGlobalStyle">.EHTipToolTip * {background: inherit;font-family: inherit;font-size: inherit;font-size-adjust: none;font-stretch: normal;line-height: inherit;font-variant: normal;border: 0px;text-transform: inherit;color: inherit;font-style: inherit;text-decoration: inherit;margin: 0px 0px 0px 0px;padding: 0px 0px 0px 0px;float: none;display: inline;cursor: default;}
.EHTipReplacer, .EHTipKey, .EHTipAudio {cursor: pointer;}
.EHTipToolTip hr {margin: 0.4em 0;display: block;border: 1px inset;}
.EHTipTranslation {font-style: normal;}
.EHTipTranslation a {color: #000099;font-style: normal;text-decoration: none;}
.EHTipTranslation a:hover {background: inherit;color: #000000;text-decoration: underline;}
</style>
  </head>
  <body style="background-color: rgb(255, 255, 255); color: rgb(0, 0,
    0);" bgcolor="#FFFFFF" text="#000000">
    I saw this as an entertaining "If I could wish..." survey, and don't
    think anybody is thinking seriously to implement it. If you asked me
    a few years ago, I'd say yes, go ahead. The benefit/cost rate is far
    too small, if any.<br>
    <br>
    As for the 'beginner-friendly' reason for change, while learning
    Haskell, it took me half an hour of confusion, and another half an
    hour of anger of how 'stupid' Haskell is. :-)<br>
    <br>
    But it is interesting to see how many people responded to this.
    Obviously a touchy thing.<br>
    <br>
    <br>
    <br>
    <blockquote style="border-left: 2px solid #330033 !important;
      border-right: 2px solid #330033 !important; padding: 0px 15px 0px
      15px; margin: 8px 2px;"
cite="mid:CAGRp5RkCFB-a4UY9ctxfrO1UQF=K=nM=KVpwSJUU1wQxuoyiAQ@mail.gmail.com"
      type="cite"><!--[if !IE]><DIV style="border-left: 2px solid #330033; border-right: 2px solid #330033;  padding: 0px 15px; margin: 2px 0px;"><![endif]--><span
        style="color:#000000;" class="headerSpan">
        <div class="moz-cite-prefix">-------- Original Message --------<br>
          Subject: Re: [Haskell-cafe] an idea for modifiyng data/newtype
          syntax: use `::=` instead of `=`<br>
          From: Oliver Charles <a class="moz-txt-link-rfc2396E" href="mailto:ollie@ocharles.org.uk"><ollie@ocharles.org.uk></a><br>
          To: Geraldus <a class="moz-txt-link-rfc2396E" href="mailto:heraldhoi@gmail.com"><heraldhoi@gmail.com></a>, Hilco Wijbenga
          <a class="moz-txt-link-rfc2396E" href="mailto:hilco.wijbenga@gmail.com"><hilco.wijbenga@gmail.com></a>, Haskell Cafe
          <a class="moz-txt-link-rfc2396E" href="mailto:haskell-cafe@haskell.org"><haskell-cafe@haskell.org></a><br>
          Date: 08/08/15 21:14<br>
        </div>
        <br>
        <br>
      </span>
      <div dir="ltr">I hate to come across as a party-pooper, but do we
        really think it's realistic that any of these changes will be
        made? I understand that there may be benefits, but they don't
        outweigh the cost of breaking almost all existing code. The idea
        of opting in to this with pragmas just doesn't seem worth it,
        and further fragments the language, ultimately reducing
        readability when I pick up another author's code.
        <div><br>
        </div>
        <div><i>ocharles</i></div>
      </div>
      <br>
      <div class="gmail_quote">
        <div dir="ltr">On Sat, Aug 8, 2015 at 7:29 PM Geraldus <<a
            moz-do-not-send="true" href="mailto:heraldhoi@gmail.com"><a class="moz-txt-link-abbreviated" href="mailto:heraldhoi@gmail.com">heraldhoi@gmail.com</a></a>>
          wrote:<br>
        </div>
        <blockquote class="gmail_quote" style="margin:0 0 0
          .8ex;border-left:1px #ccc solid;padding-left:1ex">
          <div dir="ltr">type -> alias
            <div>data -> data</div>
            <div>newtype -> newalias or newdata?</div>
            <div><br>
            </div>
            <div>`type` keyword was really confusing for me at the
              beginning, also this confusion brought another one about
              `newtype` keyword.</div>
          </div>
          <br>
          <div class="gmail_quote">
            <div dir="ltr">сб, 8 авг. 2015 г. в 22:28, Hilco Wijbenga
              <<a moz-do-not-send="true"
                href="mailto:hilco.wijbenga@gmail.com" target="_blank">hilco.wijbenga@gmail.com</a>>:<br>
            </div>
          </div>
          <div class="gmail_quote">
            <blockquote class="gmail_quote" style="margin:0 0 0
              .8ex;border-left:1px #ccc solid;padding-left:1ex">On 8
              August 2015 at 08:03, Daniel Trstenjak <<a
                moz-do-not-send="true"
                href="mailto:daniel.trstenjak@gmail.com" target="_blank"><a class="moz-txt-link-abbreviated" href="mailto:daniel.trstenjak@gmail.com">daniel.trstenjak@gmail.com</a></a>>
              wrote:<br>
              >> type Name = String<br>
              >> data Date = Date Int Int Int<br>
              ><br>
              > if we're at it ;), then please change it to:<br>
              ><br>
              >    alias Name = String<br>
              >    type Date = Date Int Int Int<br>
              <br>
              I wholeheartedly agree with replacing the current "type"
              with "alias",<br>
              the current "type" is just flat out wrong: it does *not*
              create a<br>
              type. This should be very simple to do too: introduce
              "alias" as a new<br>
              keyword and deprecate "type". No existing code would be
              affected.<br>
              <br>
              I'm on the fence about "type" instead of "data", though.
              "data"<br>
              clearly conveys the meaning that we are talking about data
              only, not<br>
              functions on that data (as in OOP). (Well, data
              constructors are<br>
              functions too.) Then again, as soon as you add "deriving",
              you *are*<br>
              defining functions on that data.<br>
              _______________________________________________<br>
              Haskell-Cafe mailing list<br>
              <a moz-do-not-send="true"
                href="mailto:Haskell-Cafe@haskell.org" target="_blank">Haskell-Cafe@haskell.org</a><br>
              <a moz-do-not-send="true"
                href="http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe"
                rel="noreferrer" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe</a><br>
            </blockquote>
          </div>
          _______________________________________________<br>
          Haskell-Cafe mailing list<br>
          <a moz-do-not-send="true"
            href="mailto:Haskell-Cafe@haskell.org" target="_blank">Haskell-Cafe@haskell.org</a><br>
          <a moz-do-not-send="true"
            href="http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe"
            rel="noreferrer" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe</a><br>
        </blockquote>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
Haskell-Cafe mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Haskell-Cafe@haskell.org">Haskell-Cafe@haskell.org</a>
<a class="moz-txt-link-freetext" href="http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe">http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe</a>
</pre>
      <!--[if !IE]></DIV><![endif]--></blockquote>
    <br>
  </body>
</html>