------ 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--