Jack H. Stanley wrote:
> Having observed the rapid progress of the Inline revolution and being an
> ardent user of Inline::C I agree with your decision to continue the
> evolution without being limited to release levels. Many shops wind up
> with many different levels of Perl due to production considerations and
> time constraints. Migrating is not easy in these environments -
> installing a package is.
Thanks Jack. It wasn't an easy decision to make but I think it was the
right one. I want everyone to know that I plan on keeping Inline moving
along towards world dominance as quickly as possible. There a lot of
cool initiatives in progress. Inline has a good amount of momentum and
the best thing I can do is just let it keep rolling. If and when it
comes to a place where core integration makes sense, we'll all know it
and that's what we'll do.
> I hope that Inline::Struct can be integrated quickly as this would
> reduce the amount of C code necessary to integrate some system
> functions. In my case it would have eliminated 5 interfaces and 600
> lines of code that could have been better handled directly in Perl. Our
> production environment is controlled from an enormous shared memory
> structure that is updated every 6 seconds.
Neil and I have been talking about this a lot lately. I'd say we have it
about 75% figured out. It's going to be *very* cool if it all works out
the way we want. The goal is this:
If you define a struct in your Inlined C code Inline will:
1) Define a Perl class that lets you create and manipulate them as
objects from Perl space.
2) Generate C code to allocate and destroy the struct data from C in a
Perl friendly manner.
3) Generate typemapping code so that you can pass them back and forth
between C and Perl.
4) Allow you to define the struct using any type that has a typemap,
including other structs that you have previously defined.
The structs may be defined in external header files as well. And you may
make use of any predefined struct in your C without Inlining the struct
by using the STRUCTS config option.
It is interesting to note that currently Inline does not add much
functionality to XS, just ease of use. This struct stuff will change
that fact, and make Inline all the more valuable.
>
> Stay the course.
Yeah baby :)
Cheers, Brian