<html><body><div style="font-family: arial, helvetica, sans-serif; font-size: 12pt; color: #000000"><div><br></div><div><br></div><hr id="zwchr" data-marker="__DIVIDER__"><div data-marker="__HEADERS__"><blockquote style="border-left:2px solid #1010FF;margin-left:5px;padding-left:5px;color:#000;font-weight:normal;font-style:normal;text-decoration:none;font-family:Helvetica,Arial,sans-serif;font-size:12pt;"><b>De: </b>"Guy Steele" <guy.steele@oracle.com><br><b>À: </b>"Kevin Bourrillion" <kevinb@google.com><br><b>Cc: </b>"Remi Forax" <forax@univ-mlv.fr>, "amber-spec-experts" <amber-spec-experts@openjdk.java.net><br><b>Envoyé: </b>Vendredi 12 Avril 2019 20:43:12<br><b>Objet: </b>Re: records are dead long live to ...<br></blockquote></div><div data-marker="__QUOTED_TEXT__"><blockquote style="border-left:2px solid #1010FF;margin-left:5px;padding-left:5px;color:#000;font-weight:normal;font-style:normal;text-decoration:none;font-family:Helvetica,Arial,sans-serif;font-size:12pt;"><br class=""><div><blockquote class=""><div class="">On Apr 12, 2019, at 2:17 PM, Kevin Bourrillion <<a href="mailto:kevinb@google.com" class="" target="_blank">kevinb@google.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div dir="ltr" class=""><div dir="ltr" class="">On Fri, Apr 12, 2019 at 12:34 AM Remi Forax <<a href="mailto:forax@univ-mlv.fr" target="_blank" class="">forax@univ-mlv.fr</a>> wrote:<br class=""></div><div dir="ltr" class=""><br class=""></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">At the end of section "Why not "just" do tuples ?", you have this gem,<br class="">
"A good starting point for thinking about records is that they are nominal tuples."<br class=""></blockquote><div class=""><br class=""></div><div class="">That is *a* starting point, but I think a barely useful one. Records have semantics, which makes them *worlds* different from tuples. Methods, supertypes, validation, specification... I think it's fair to say that all a record <i class="">holds</i> is a "tuple", but it's so much more. Record is to tuple as enum is to int.</div></div></div></div></blockquote><br class=""></div><div>Good observation.  And also note that Java `record` is to C `struct` as Java `enum` is to C `enum`.</div></blockquote><div><br></div><div>Apart from the fact that records are now immutable.<br data-mce-bogus="1"></div><div><br data-mce-bogus="1"></div><div>I had no issue with the previous incarnation of record to be named record, it was even a great name, record is the Pascal equivalent of the C struct, i've seen it as a kind of homage given that i believe the only other thing that Java has from Pascal is its method calling convention.<br data-mce-bogus="1"></div><div><br data-mce-bogus="1"></div><div>Rémi<br data-mce-bogus="1"></div><div><br data-mce-bogus="1"></div></div></div></body></html>