Post by JamiePost by Marco van de VoortSo why should Embarcadero spend a significant percentage of their
development budget on this? Better they start fixing bugs with it :)
Why? so I can use memory that isn't needed by an app of such nature
for other things.
EXEs are only memory mapped, and not the whole binary must be in memory.
Unused parts are unloaded in low memory circumstances. (though with 4k
granularity for 32-bit and 8k for 64-bit).
Moreover, for most non trivial applications, datasize allocated by an EXE
dwarfs the code size. If you persist in that way of thinking, I think the
growing of TObject in post D2007 versions might be a much worse thing that
dwarfs binary size issues.
Post by JamieYou know the term multitasking? It means that you can run multiple
different apps on your PC with out running out of resources..
Yes. And I fail to see how a 300kb difference will make a difference
in a world where entry level machines are equiped with at least 4GB memory.
Post by JamieAnd for the comment I made with dynamic code, I wasn't referring to
Packages, I was referring to a standard non-delphi DLL that could be
loaded at run time at will if only the selective property or flag is
set, then from there, a few call backs or what ever is needed to make
access to the main body functions, which are in the DLL. This
would be a choice that could be made on resource usage at run time.
The result remains the same. It is the refactoring into a minimal interface
and the full implementation that causes the savings. Not the dyn
usage itself.
If such refactoring was done, Embarcadero could have simply only link
the bulk of the code in when needed.
Post by JamiePackages in delphi aren't much better in the way the code implements
them in the main program. The code in the main program is still making
references to all sorts of things that would be in a package and on top
of that, most people put a lot more than a single unit's worth of code
in a package.
That is not true. Packages can also be dynloaded, specially if they
override base types that are statically linked.
Packages are the same as dyn linking in most ways, just under control
of the compiler.
Post by JamieSo in the end, the final program will still load that package in the
case of the themes unit.
If you only put the themes unit in the package. BUt if the RTL contains
an abstract themes, you could load the full version of themes dynamically,
theoretically.
Post by Jamieyou can load packages like a raw DLL but I don't see any of the VCL
code organized to allow this to where it actually pays off.
That's the exact point I tried to make in the dynamic library package.
The organization for minimalistic purposes isn't there. And then
it doesn't matter if it is statically or dynamically linked.
But afaik Delphi allows recompilation of the RTL/VCL? Simply cut out
themes, turn extended RTTI off?
Post by JamieI am thinking of writing a SDR (sound defined radio) program using
the latest version of Lazarus. Recent testing shows that it is running
neck and neck with current version of delpi. If I didn't know any
better, it looks like they are using FP compiler? Something is up with
that..
Lazarus uses fpc yes, always has, the projects have been linked since
Lazarus' inception. (FPC is older)
But Lazarus has binary size overhead due to its multiplatformness, and
is slowly increasing too.