>>> I'm not sure about this - often (very often) modules escape from their
> context - so for example, individual modules in one application
> escape from that application and find themselves being included in other
> applications. This is just done by googling and cut-and-paste. I do
> this frequently. How do I solve X? - Google a bit. I find some code in
> yaws
> or mochiweb that does what I want. I just take the individual module
> remove it from its context and either use it or modify it. The changes
> I make are not back-propagated into the original module. If you
> keep the meta data in the module itself it won't get lost if the module
> is seen "in the wild" - if you put the information outside the module
> then one day you will loose it.
>>If you pulled these module(s) you want to take code from out into a separate
library, published it on github and sent a request to the original author(s)
to adopt this as a separate dependency, there would be a bit more granular
reuse going on. Naturally the original authors might reject your dependency
for their code, but with the right metadata available in your new library,
others would be able to discover and potentially also use it.
>The problem is that releases and applications are somewhat an advanced
> >concept that not all developers know and understand.
>
But they ought to learn about them. Making releases and
libraries/applications the standard unit of distribution and dependency
use/reuse (as rebar, agner and other tools do) should reinforce this and
encourage people to learn.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20110913/78398e0f/attachment.html>