<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 href="mailto:hilco.wijbenga@gmail.com">hilco.wijbenga@gmail.com</a>>:<br></div><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 href="mailto:daniel.trstenjak@gmail.com" target="_blank">daniel.trstenjak@gmail.com</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 href="mailto:Haskell-Cafe@haskell.org" target="_blank">Haskell-Cafe@haskell.org</a><br>
<a 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>