<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <p>You are right George.  I'm not entirely sure what the standards
      are with everything, but it would be nice to have something public
      and concrete.  Things that already exist cannot have their API
      changed - they can be refactored, but as a black box it might be
      completely identical.  Things like changing a sorting algorithm is
      no problem (so long as it's still a comparison sort).</p>
    <p>Gareth aka. Kit</p>
    <p><br>
    </p>
    <div class="moz-cite-prefix">On 06/06/2019 17:23, George Bakhtadze
      wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:246571559838238@iva2-e9bddb4e925f.qloud-c.yandex.net">
      <meta http-equiv="content-type" content="text/html; charset=UTF-8">
      <div>It would be also great if there was an official set of
        interfaces (not necessarily in interface type form but API
        description) describing all these generic containers and
        algorithms.</div>
      <div>Thus, all implementations which follow these interfaces are
        interchangeable.</div>
      <div>I believe this is even more important than 4-th or 5-th
        implementation.</div>
      <div> </div>
      <div>---</div>
      <div>Best regards, George</div>
      <div> </div>
      <div>06.06.2019, 17:58, "Ben Grasset"
        <a class="moz-txt-link-rfc2396E" href="mailto:operator97@gmail.com"><operator97@gmail.com></a>:</div>
      <blockquote>
        <div>
          <div>On Wed, Jun 5, 2019 at 11:11 AM Sven Barth via fpc-devel
            <<a href="mailto:fpc-devel@lists.freepascal.org"
              moz-do-not-send="true">fpc-devel@lists.freepascal.org</a>>
            wrote:</div>
          <div>
            <blockquote style="border-left-color:rgb( 204 , 204 , 204
);border-left-style:solid;border-left-width:1px;margin-bottom:0px;margin-left:0.8ex;margin-right:0px;margin-top:0px;padding-left:1ex">
              <div>
                <div>You could try to adjust the FGL unit to use the
                  pluggable sorting system introduced here: <a
href="https://svn.freepascal.org/cgi-bin/viewvc.cgi?view=revision&revision=41167"
                    moz-do-not-send="true">https://svn.freepascal.org/cgi-bin/viewvc.cgi?view=revision&revision=41167</a></div>
              </div>
            </blockquote>
            <div> </div>
            <div>Wouldn't that system itself need to be generic and not
              just use void pointers first? Or is that part of what you
              meant?</div>
            <div> </div>
            <div>IMO something FGL would benefit from also is the
              removal of the probably-not-the-best-design inheritance
              from non-generic TFPSList to everything else, which
              prevents inlining in a large number of places (the
              compiler notes indicating such are visible basically any
              time you use anything from FGL.)</div>
          </div>
        </div>
        ,
        <p>_______________________________________________<br>
          fpc-devel maillist - <a
            href="mailto:fpc-devel@lists.freepascal.org"
            moz-do-not-send="true">fpc-devel@lists.freepascal.org</a><br>
          <a
            href="http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel"
            moz-do-not-send="true">http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel</a></p>
      </blockquote>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <pre class="moz-quote-pre" wrap="">_______________________________________________
fpc-devel maillist  -  <a class="moz-txt-link-abbreviated" href="mailto:fpc-devel@lists.freepascal.org">fpc-devel@lists.freepascal.org</a>
<a class="moz-txt-link-freetext" href="http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel">http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel</a>
</pre>
    </blockquote>
  <div id="DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2"><br />
<table style="border-top: 1px solid #D3D4DE;">
        <tr>
        <td style="width: 55px; padding-top: 13px;"><a href="https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient" target="_blank"><img src="https://ipmcdn.avast.com/images/icons/icon-envelope-tick-round-orange-animated-no-repeat-v1.gif" alt="" width="46" height="29" style="width: 46px; height: 29px;" /></a></td>
                <td style="width: 470px; padding-top: 12px; color: #41424e; font-size: 13px; font-family: Arial, Helvetica, sans-serif; line-height: 18px;">Virus-free. <a href="https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient" target="_blank" style="color: #4453ea;">www.avast.com</a>
                </td>
        </tr>
</table><a href="#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2" width="1" height="1"> </a></div></body>
</html>