The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
[Changes for 0.09 - December 22, 2004]

* Installing this module no longer requires SWIG.  Yay!

* Fixed a spurious warning from t/1-basic.t.

[Changes for 0.08 - June 15, 2004]

* Object and Environment now has ->val and ->sym to easily create
  MzScheme objects from Perl.

* Fixed building and eliminated segmentation faults on Mac OS X.

[Changes for 0.07 - June 15, 2004]

* MzPerl now correctly supports end-of-file as end of ";__PERL__;" regions.

* All MzScheme code are now evaluated in Language::MzScheme::Env::__eval;
  this made Spiffy-based modules (eg. IO::All) work better.

* Avoid importing invalid symbols, such as '(OVERLOAD', into MzScheme space.

* Adds nifty call/cc example to bin/mzperl's POD.

* Suppressed harmless warnings under -w.

[Changes for 0.06 - June 14, 2004]

* Beginning of at least some module documentations.

* Massive refactoring for Perl method wrappers, resulting in better
* error handling and more robust symbol importing.

* The script/mzperl program now supports inlined Perl code, via
  ;__PERL__; ... ;__END__; blocks.

[Changes for 0.05 - June 13, 2004]

* Much more efficient vector<=>arrayref type conversion.

* Context symbols added to function definition and runtime object
  invocation with sigils; the default context is to interpret it
  as scalar if only one value has been returned, and as a list otherwise.

* Objects and code references now preserve their identity when
  casted into scheme object and later dereferenced with ->as_perl_data.

* Environment is now created with Language::MzScheme->new, which adds
  perl-specific bindings (perl-use, perl-require, perl-do, perl-eval)
  on top of the basic env.

* New utility, script/mzperl, a perl-embedded mzscheme interpreter.

* Full round-trip for non-self-referential data structures now works;
  you can now pass unblessed references into scheme.  (Blessed references
  already works as object closures.)

* Proper error handling; scheme-level errors are turned into "die" calls;
  calls within eval{} will return scheme_undefined, but $SIG{__DIE__} will
  catch the actual error.

* Object closure invocation now demands a method instead of silently dying.

* Extensive tests for context, object, data, perl-calls and error handling.

[Changes for 0.04 - June 11, 2004]

* Backported to SWIG 1.3.19 and earlier versions.

* Methods refactored into Language::MzScheme::Object and
  Language::MzScheme::Env classes.

* All scheme value types turned into properly overloaded Perl objects;
  type checking methods, eg. ->isa('CODE'), are also implemented.

* Deep copying into perl data structure supported as $obj->as_perl_data.

* Previously exported symbols now become class methods for Language::MzScheme,
  with the prefix 'mzscheme_', 'scheme_' and 'SCHEME_' removed.

* Transparent procedure calls across perl/scheme boundaries.

* Perl objects and classes may now be bound as scheme primitives.

* To invoke perl objects from scheme, do this:
    (object 'method arg1 arg2 ...)

[Changes for 0.03 - June 9, 2004]

* Build cleanly on SWIG 1.3.21, which we now require.

* It is now possible to insert Perl subroutines as MzScheme primitives.
  (See t/1-basic.t for how.)

* Perl-based primitives can both accept and return lists of any size.

[Changes for 0.02 - June 7, 2004]

* Worked around automatic "swig -shadow" on Mac OS X, by not rebuilding
  lib/Language/MzScheme_in.pm by default.

* All publicly supported functions from "schemex.h" are now wrapped.

* Fixed ithreads building problem by setting scheme_set_stack_base().

[Changes for 0.01 - June 7, 2004]

* Initial CPAN Release.