# Revision history for Inline::SLang
--
version: 0.05
date: Fri Mar 14 11:57:31 EST 2003
changes:
- Removed the namespace tests (t/20bind_foo|many.t) if S-Lang version is
less than 1.4.3. This should remove the CPAN testing failure.
If you wish to use the BIND_NS option then make sure you have at least
this version of S-Lang (you gain further benefits if you upgrade to
at least v1.4.7).
- Can specify the Perl package name for each S-Lang namespace to be bound
to (by specifying "foo=bar" in the BIND_NS config option to get S-Lang
namespace "foo" to be bound to the "bar" Perl package). I can't actually
think of a need for this.
- BIND_NS = "All" will bind all namespaces without having to specify them
individually (only available if you use v1.4.7 or higher of S-Lang)
- Added the BIND_SLFUNCS option to allow binding of selected S-Lang
intrinsic functions. We allow these functions to use a different function
name in Perl to that in S-Lang (specified as "slang_name=perl_name").
- The output of 'perl -MInline=info' has been updated to account for the
inproved binding schemes.
- added support for Ref_Type (both from and to S-Lang) variables (scalar
only). This makes use of "private" routines/structures and so should
be considered a hack.
- handling of S-Lang structs has changed to more closely match the S-Lang
API (in that the method names match the S-Lang function names without
the 'slang_')
- Support for "non native" types (those that are represented by an object
from an Inline::SLang::* class) has been standardised to use the name
of the S-Lang datatype: at present we have Inline::SLang::DataType_Type,
Inline::SLang::Struct_Type, and Inline::SLang::Ref_Type. All classes
provide several common methods (all classes are sub-classes of a
hidden base class).
This has the side effect of making the class names even more verbose.
- Documentation for configuration of Inline::SLang has been moved from
Inline::SLang to Inline::SLang::Config.
--
version: 0.04
date: Fri Mar 7 00:14:47 EST 2003
changes:
- The copyright holder is now the Smithsonian Astrophysical Observatory.
- The license changed to GNU General Public License only (prior to v0.04
it was distributed under a dual "perl or GNU GPL license" scheme)
- S-Lang's Struct_Type variables are converted to Inline::SLang::struct
objects, assuming the types of the fields are also supported.
The conversion leaks memory.
- 1D and 2D support for DataType variables (S-Lang to Perl)
- Fixed mem leaks in the code converting associative-array
- improvement to access 1D/2D arrays of Complex_Type values; users
should see no change because of this
- internal function added to access S-Lang version module was compiled
against. This is almost-certainly not needed.
- Conversion of perl types to S-Lang is still very limited.
- added the configuration option BIND_NS: only functions in namespaces
in this list are bound to Perl. Note that S-Lang intrinsic functions
are not bound to Perl and that S-Lang functions in namespace foo
(ie that would be evaluated via foo->function_name() in S-Lang)
are accessed via foo::function_name() in Perl. See the TODO file for
possible future upgrades.
- improved the build/load functions used when evaluating/loading the
S-Lang code. This stops the S-Lang code being evaluated twice the
first time a file was evaluated.
- further separation (and improvement) of test cases
--
version: 0.03
date: Tue Jan 28 12:01:49 EST 2003
changes:
- Initial CPAN release (for feedback/comments as still pre-alpha)
- S-Lang's associative arrays are supported (in so far as there is
1D array support for the data type of the stored data)
- S-Lang's Complex_Type is stored as a Math::Complex object in Perl
and can convert between the two languages (scalars only)
- S-Lang's Datatype_Type is represented as an Inline::SLang::datatype
object (scalars only).
- 1/2D array support (S-Lang to Perl) no longer lumps together similar
datatypes (eg char, short, int, long) into the code (should we just
typecast them to long in S-Lang scope instead?)
- Complex types are supported in 1 & 2D arrays
- documentation split: data type information is now in a separate pod,
Inline::SLang::Types.
- 'perl Makefile.PL' now supports the --gdb(=string) flag (--help for
help)
Initial support for both static and dynamically-loaded forms of the
S-Lang library.
Added Test::More as a requirement.
--
version: 0.02
date: Sun Jan 19 10:56:10 EST 2003
changes:
- now correctly accesses elements from String_Type (thanks to John Davis)
- started support for > 1D arrays (S-Lang to Perl only)
- added some necessary files for a perl module
--
version: 0.01
date: Thu Jan 16 23:59:59 EST 2003
changes:
- initial version
- the fact it works is thanks to Neil Watkiss' Ruby & Python Inline modules
--