[fpc-pascal] Generics vs templates
Graeme Geldenhuys
mailinglists at geldenhuys.co.uk
Mon Jan 8 21:30:31 CET 2018
On 2018-01-08 10:58, Sven Barth via fpc-pascal wrote:
> FPC essentially reparses a generic during specialization so I'd say that
> they definitely affect compile times. However we're still only doing a
> single pass of parsing. This while the compilation might be slower it might
> not be as bad as with a C++ compiler.
>
> As far as I know no one has done a benchmark for that however.
Speaking of Generics and Benchmarks. Has anybody done some benchmarks on
FPC's Generics vs "old-school" TList and TObjectList. Recently I did a
very simple test with Delphi XE3 using TList<Integer> and a stock TList.
Adding 50,000 and 200,000 integer values to each list, and timing the
creation of the list and population of the list. Then I also timed the
destruction of the list. I was horified to find out how much slower
Delphi's Generics were compared to TList and TObjectList. Destruction
was 250x slower in many cases. Creation and population of the list was
5x-10x slower.
Lets hope FPC fares better. If nobody has done such tests, I can do it
tomorrow at work with the same Delphi test code I created.
Regards,
Graeme
--
fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal
http://fpgui.sourceforge.net/
My public PGP key: http://tinyurl.com/graeme-pgp
More information about the fpc-pascal
mailing list