I think Julian M Bucknall is way too pessimistic about Delphi, because
what that means is: if you have Unit1.pas and Unit2.pas and both are
using TList<Integer> both Unit1.dcu and Unit2.dcu have the binary code
for TList<Integer> compiled in, but only when compiling your binary the
linker will remove duplicates. So i think Delphi is the same as C++,
because notice that C++ also has code bloat with templates:
So read in the following it says:
"In C++ code bloat occurs because compilers generate code for all
templated functions in each translation unit that use them. Back in the
day the duplicate code was not consolidated resulting in "code bloat".
These days the duplicate code can be removed at link time."