Last month Joel Spolsky published a column entitled Please Sir may I have a linker, where he rants about .NET lacking a static linker:
I just want to link everything I need in a single static EXE that runs without any installation prerequisites. [...] So Microsoft, wake up, get us some nice 1950s-era linker technology, and let me make a single EXE that runs on any computer with Win 98 or later and no other external dependencies. Otherwise .NET is fatally flawed for consumer, downloaded software.He writes now that Microsoft didn't agree and doesn't consider shipping a linker, for several good or not so good reasons; and he comments:
Look, I used to be a program manager at Microsoft, and there's a really strong tendency in that culture to treat customer requests as fun intellectual challenges to be fended off like exercises in debating class.Isn't this the case of open-source software too? or every situation where you don't have too much pressure from your clients.
Now concerning Perl 5, due to the marvellous PAR, it's possible to ship, to a decent extent, self-containing executables. Such a thing will be a great plus for parrot as well -- not only producing executables that don't need a parrot VM to run, but linking statically all libraries needed for the compiled program to run. No dependencies, easier deployment, easier upgrade, easier installation. That would be a feature that neither the CLR nor the JVM provide.