[Melbourne-pm] The grass on the other side..

Daniel Pittman daniel at rimspace.net
Mon Nov 23 19:53:56 PST 2009

Toby Wintermute <tjc at wintrmute.net> writes:


> The thing that I found interesting was this choice for Lift to auto-update
> your dependencies. I don't know how often it does it, I know it isn't every
> time you subsequently run it.

I understood that to be more a Maven (apt for Java) feature than a language
feature, when dealing with this sort of thing.

> How would that work in the Perl ecosystem?

Again, my understanding was that most projects listed their dependencies as
"random-library-1.1", and only version 1.1 would be installed, or suffice.


> I think we'd laugh at the concept.. It would be plagued by incompatible
> updates hurting each other, or by one duff update screwing the rest, or by
> circular dependencies getting stuck.

*nod*  Usually, in Java, updating arbitrary JARs is prone to these issues,
because the habit of distributing packages with applications, and using
versioned dependencies, means that many third party libraries don't practice
ABI compatibility.


> But apparently this is acceptable behaviour elsewhere. I'm curious
> though.. does it suffer from the instability issues, or does it Just Work?

My comments are based on my practical experience, save the Maven-ish bits,
where I only know a tiny bit.

> If the Perl behaviour was changed to always-auto-update, would there be a
> short period of pain, while we fixed stuff, but then a golden age of
> reliability?

Almost certainly not.

> Or is there something inherent in Perl's community and/or release structure,
> that causes the pain?

Nope.  Conversely, the Java community is *not* better at this than we are:
part of the reason that the habit of shipping third party binary libraries
with your application came about was to address the issue of ABI

Ruby fell into the same trap, with their gems system, if you are looking for
another reference point in a more dynamic (and Perl-like) language than Java.


✣ Daniel Pittman            ✉ daniel at rimspace.net            ☎ +61 401 155 707
               ♽ made with 100 percent post-consumer electrons

More information about the Melbourne-pm mailing list