On 8/12/2017 10:11 AM, Farley, Peter x23353 wrote:
That kind of HLL optimization effect can only happen in a monolithic program
where all of A, B, C, etc. sources are available to the compiler at the same
time. Developing in modular, separately-compiled programs (whether they wind
up in DLL's or just as separately loaded executables) is a different world
entirely.
True, however, modular separately compiled programs have a severe
performance penalty at the boundary between modules compared to inlined
code - which is why the compiler does it.
Unfortunately the implementation of C/C++ (and to a certain extent Java) IDE's and build
systems (like *ix make and its imitators) tends to make developers think and develop in
that "monolithic" mindset, which isn't necessarily the most maintainable way to
write and support application code.
I'm not sure that monolithic is how I would describe the mindset - many
people would suggest C++ code etc. is overly fragmented into class
hierarchies etc. But the resulting application may be monolithic.
DLL hell is also a real problem when you build everything into modular
DLLs.
--
Andrew Rowley
Black Hill Software
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN