> I want to write a C extension module which runs automatically after a
> source file has been read, but before it executes. I tried putting the 
> following in the Init_ function:
>   code = NEW_CALL(NEW_CONST(rb_intern("Stuff")), rb_intern("doIt"), 0);
>   ruby_eval_tree_begin = block_append(ruby_eval_tree_begin, code);
> However, this didn't work, because require_libraries in ruby.c saves
> and restores the value in ruby_eval_tree_begin.
> Is there another way to have my code run automatically?

(general question)

Shouldn't read and eval be two separate operations like in lisp?  this
would simplify the task of writing compilers / optimizers / browsers /
listeners for ruby.

matju