On Sun, Apr 19, 2009 at 10:45 AM, Abdulaziz Ghuloum <[email protected]> wrote: > The majority of the libraries don't even require explicit > initialization: they only export some procedure definitions and > maybe some macros. Libraries in the wild are not supposed to print > stuff to the console since that limits their utility (e.g., you > cannot use them in a CGI script).
Well, there is at least one use case for having libraries printing stuff on stdout at instantiation time. In Python I often use frameworks with thousands of dependencies and name clashes with module names, especially if the PYTHONPATH is messed up, and if I have two different versions of the same library, is not unheard of. In such case I put a print in the library, to see if is is really imported by the framework, or if the system is importing a different one with the same name. > So, I agree, focusing on the > usual libraries that don't involve side effects or macros would be > more suitable (or gentler) for the first article or two. Otherwise > it would feel just too overwhelming for people who haven't probably > thought it possible to perform computations (let along side effects) > at compile time. Just a thought. Here is a draft of my first article on the module system, special preview only for the readers of this list! http://www.phyast.pitt.edu/~micheles/scheme/scheme19.html
