<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body smarttemplateinserted="true" text="#000000" bgcolor="#FFFFFF">
    <div id="smartTemplate4-template"><br>
    </div>
    <div>An object based container library would also be helpful. <br>
    </div>
    <div><br>
    </div>
    <div>With classes stored on the heap you always need additional
      memory access. Just one, but that is already bad in performance
      critical loops<br>
    </div>
    <p><br>
    </p>
    <p><br>
    </p>
    <div>Best, Benito<br>
    </div>
    <br>
    <div class="moz-cite-prefix">Am 06.06.19 um 18:23 schrieb George
      Bakhtadze:<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&#xA;);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>
  </body>
</html>