Revision history for Perl extension Inline-Ruby.

0.01 Sat Jan 12 00:14:11 PST 2002       @60
        - RELEASE: Inline-Ruby-0.01
        - Use $Config{path_sep} for splitting $ENV{PATH} in Makefile.PL
        - Exit with an error message if Ruby not found on the PATH.
        - Remove eval_ruby().
        - Add a '\n' to Inline::Ruby::Exception::to_str.
        - Finished documentation.
        - Added supporting #ifdefs for 5.005_03 support

0.01  Wed Jan  9 09:46:30 PST 2002      @51
        - Created a PerlProc class, which is like Ruby's Proc class: it wraps
          closures. Ruby Procs are not allowed to call 'yield', which means
          passing them blocks has no meaning. That makes them very useful for
          holding Perl closures.
        - Added two new config parameters: REGEX(P) and BIND_TYPE(S). You can
          tell Inline::Ruby what types you want it to bind to: classes,
          modules, and functions being the choices. You can also provide a
          regular expression, which classes, modules, and function names must
          match.
        - Added more tests to prove that those all work.
        - Added a samples/tk/ directory, and wrote a simple Ruby Tk app to
          demonstrate the PerlProc class in action.

0.01  Tue Jan  8 04:38:59 PST 2002      @50
        - Created a PerlException class to give Ruby information about Perl
          errors that occur within Perl subs or callbacks.
        - Make sure that Inline::Ruby clears $@ if any call was successful.
          That's important -- if you can potentially set $@, you need to clear
          it if nothing's wrong.
        - Added a test case to cover the new PerlException class.
        - Added new Todo items.

0.01  Tue Jan  8 01:54:42 PST 2002      @49
        - changed the iterator interface completely (but not yet the doc).
        - added rb_iter() method to return an object which stores an iterator
          hook.
        - methods can then be called upon the iterator object, and the
          iterator hook is passed to Ruby as a block.
        - Basically, these two calls illustrate the difference between a
          regular method call, and a method call with an iterator:
             $o->method(@args);
             $o->iter(\&my_iterator)->method(@args);
        - updated all the tests to use the new syntax.

0.01  Mon Jan  7 12:41:55 PST 2002      @48
        - added a method config_var($var), which will tell Perl whether the C
          #define $var is defined or not. Used the change the way the tests
          behave slightly, based on what's going to happen in XS.
        - Added two new test files: a better iterator, and exception tests.

0.01  Mon Jan  7 08:21:32 PST 2002      @47
        - my_error_trap() now throws a Perl exception object which stringifies
          into the Ruby exception (so you can use $@ =~ /foo/), but which also
          accepts other method calls.
        - can't trap Perl exceptions from Ruby yet.

0.01  Sun Jan  6 19:39:06 PST 2002      @46
        - More code cleaning. The XS portion of the code is much smaller, by
          moving lots of code into macros and static functions.
        - Functions are now automatically bound to Perl.
        - rb_call_function() now accepts an iterator argument, just like
          rb_call_*method().
        - Added a call to rbrescue(), which "rescues" the interpreter from
          any uncaught exceptions. Currently prints out a warning and returns
          undef.

0.01 Sat Jan 5 18:42:01 PST 2002

0.01  Thu Jan  3 21:48:15 PST 2002      @45
        - RELEASE: Inline-Ruby-0.01-pre2
        - do_rbinit() made much closer to what ruby itself does. Needed for
          things like the Tk extension -- it tries to find the executable, and
          causes a segfault on a NULL pointer.
        - made tests 03 and 04 work.
        - lots of documentation added (still not finished).

0.01  Thu Jan  3 15:46:49 PST 2002      @44
        - First working test: 01basic.t
        - No documentation
        - Massive code cleanup in XS and C

0.01  Mon Dec 24 12:25:38 PST 2001      @38
        - Removed the 'package' parameter. It doesn't even work in
          Inline::Python that well. In Ruby we have a "flat" namespace anyway,
          so you just have to specify full names of functions.

0.01  Mon Dec 24 01:58:24 PST 2001      @37
        - Inline::Ruby mostly working
        - rb2pl() and pl2rb() data marshalling working
        - rb_bind_function(), rb_bind_class() working
        - next step is to automate the process using rb_study_package

0.01  Sat Dec 22 02:12:21 PST 2001      @34
        - Change all 'python' references to 'ruby' before doing a pre-release
          of Inline-Ruby-0.01

0.01  Sun Dec  9 21:34:19 PST 2001      @7
        - Checking unreleased Inline-Ruby distro into P4

0.01 Tue Jul 10 09:35:20 PDT 2001

0.01 Tue Jul 10 09:17:27 2001