<html>
  <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <blockquote cite="mid:F4FCDA9B-028C-4A4D-9369-D81C9257595F@qq.com"
      type="cite">
      <div>
        <blockquote type="cite" class="">
          <div dir="ltr" class="">
            <div class="gmail_extra">Does this differ significantly from
              fclabels or the upcoming OverloadedRecordFields extension?
              (Aside from being purely type driven, which has problems
              in your example if you compose a second Int into it.)<br>
            </div>
          </div>
        </blockquote>
      </div>
      <div class=""><font class="" face="Courier">1. Yes, it’s similar
          to OverloadedRecordFields but doesn’t force you to use a
          label, and you may use Tagged to label a field if you want.</font></div>
      <div class=""><font class="" face="Courier">2. Yes, but again, you
          can use Tagged to allow same type in different disguise.</font></div>
    </blockquote>
    <br>
    I can see a potential problem because you can't hide instances. Once
    you
    define a Has-relationship, you can't cheaply change it. That could
    lead
    to conflicts, unless you hack around it with orphaned instances in a
    separate module. But you say you want to solve conflicts with
    tagging –
    so it would be reasonable to incorporate the tag in the class from
    the
    start. Which brings us back to fclabels I suppose.<br>
    <br>
    MarLinn<br>
  </body>
</html>