[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.