logo       

Re: against the components utopia: msg#00059

lang.scala

Subject: Re: against the components utopia

Jamie Webb <j@xxxxxxxxxxxxxxx> writes:
> The issue I have is that the unstable and stable branches are
> incompatible. You can't mix them. That's pretty much unavoidable for
> Debian because it uses native binaries, but it /can/ be avoided for
> Java and Scala /provided/ there's code in place to deal with
> occasional incompatibilities when they do occur.

Well, I disagree. In the case of Linux distributions, as I posted
earlier, recompiling at install time does not save you. If I take a
Debian/stable package and recompile it, the recompiled package will
still depend on "apache" instead of "apache2", will still place files
in "/home/apache/modules" instead of "/www/modules", and will still
pass in an empty string where it was supposed to pass in NULL.
Sometimes code is just incompatible.


The same sorts of examples occur with Scala and Java packages. In the
end, someone has to do the work to make components be compatible with
each other. It isn't going to just happen. Ideally, the work is
minor, but the minor changes needed to make a package work in
Debian/sid are different from the minor changes needed to make a
package work in Gentoo. Trying to eliminate that last, tiny bit of
work tosses you right into components utopianism.

Here's an open challenge: No matter the components system, I can come
up with a counterexample where components from different distributions
do not work together with zero modification. I started to post an
example based on your good ideas from previous posts, but I'll leave
off for now -- it's pedantic and unconvincing to attack a system that
you are still developing. Nevertheless, the challenge is out there:
where's the perfect linkage system? The imperfection of them strikes
me as fundamental.


I don't see this as a bad thing. On the contrary, it provides a
firmer foundation for the research area. Once you assume a substrate
system that has some human override mechanism, you can start
*evaluating* component systems, *comparing* them to each other. You
have a basis for saying one is better than another--not to mention,
that some ideas are losers. Without such a substrate, all you have is
an unending sequence of ultimatums.


-Lex




<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise