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

Reply via email to