To read all comments associated with this story, please click here.
Just to be clear about one idea flying around recently.
Applications bundles on OS X DO NOT duplicate any system libraries (more generally called framework), absolutely not. If an application needs to have its custom frameworks then it does put in its bundle, but the system framework are not duplicated in the bundles.
What do yo mean unused elements of the library? Which library?
Frameworks are dynamically linked to the executable, they are not added to the executable. So what's your point?
What do you packaging all elements of a library?
Again frameworks are contained in one location /System/Library/Frameworks
there is no packaging or whatsoever. Again, besides its custom frameworks, an application bundle does not contain any other duplication of the system frameworks.
What are NIB files but a library file included at packaging? How is the packaging process any different from a linker when it comes to condensing a bunch of separate files into the same 'file' - it's the same concept. (Closest comparison windows side would be a resource file or set of resource files compiled to a DLL)
Including unused NIB's in the package is the same as including unused DLL's in a .msi or compiling unused libraries into an executable.
That they are packaged into the same distributable 'file' though means it could incur slowdowns, as package files are basically handled as a filesystem and it's more files to wade through trying to get to the ones that are actually being used. The slowdowns from this could be compared to the old interpreted BASIC days where you could speed up some programs and make them practical to exchange at 150 baud just by deleting a few REM statements and trimming unused subroutines - stuff that was/is good during development but has no place in a distribution.
Edited 2008-06-28 08:29 UTC






Member since:
2005-07-12
if similar changes were made to the printer drivers - it's ridiculous to have 2.1 gigs of printer drivers, much less a third of that being nothing but Epson.
The not removing unused elements of the library in the linker would explain a lot about the heft of OSX. Given that the applications on the whole tend to be self contained packaging all elements of a library, even those that are unused would indeed be unneccessary bloat - but an easy thing for a programmer who doesn't even understand what a linker IS to miss.
Edited 2008-06-28 00:13 UTC