------art_37836_2401156.1180191610265
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

On 5/26/07, Jeremy Henty <onepoint / starurchin.org> wrote:
>
> On 2007-05-26, Peter Seebach <seebs / seebs.net> wrote:
>  I would say yes.  My rule of thumb is that any file that explicitly
> calls some API must explicitly require/use/#include/... that API.
> IOW, batteries *should* be included; don't force your users to make
> extra trips to the shops.



I think your rule of thumb is absolutely right. Always make your code as as
easy as possible to use.

However...
I have started, coding my source files *without* including all the things
they might require, just to be ready for an eventual Ruby deployment model
that pulls together pieces of code running in different processes, using DI
to make sure everything is included at runtime. I know that must sound
weird. It does put more pressure on the users of a given code module, since
they have to know more about the includes required by things that they
include.

------art_37836_2401156.1180191610265--