title: Why does the amateur implementation of a Fortran version of Delphi's TStringList behaves 10 times lower than Delphi's built-in one?
body: <p>To learn the OO feature of latest <code>Fortran</code>,  a <code>Fortran</code> version of <code>Delphi</code>'s <code>TStringList</code> is written and linked below (<code>gist.github</code>). The <code>Fortran</code> source mimics the <code>Delphi</code> one. </p>
  
  <p>This <code>Fortran</code> <code>TStringList</code> functions as expected. My problem is, however, its LoadFromFile/SaveToFile combination to read/write a 30MB file is 10 times slower than Delphi's counterpart. The larger the file is, the worse the Fortran's version looks. I wouldn't be surprised because of my amateur Fortran skills. For the same reason, I could not understand where the performance drop happens or even where to start. Could you help to comment? Thank you very much for your time!</p>
  
  <p><a href="https://gist.github.com/3dd70d740a3e372a3415" rel="nofollow">System.f90</a></p>
  
  <p><a href="https://gist.github.com/347d4f5e3d1ce8eff5a4" rel="nofollow">SysUtils.f90</a></p>
  
  <p><a href="https://gist.github.com/4010199758d1e976b0c8" rel="nofollow">Classes_TStringList.f90</a></p>
  
  <p><a href="https://gist.github.com/631152d69bef02262431" rel="nofollow">Test program of the LoadFromFile/SaveToFile</a></p>