Hildo Biersma quoted RFC 62 and then went on thusly:

> > C<XS> is an excellent medium for sharing the glory of the internals
> > of Perl with the C programming community.  It is hoped that the
> > interface deescribed herein will become an excellent medium for
> > sharing the glory of the internals of well-written C libraries
> > with the Perl programming community.
> 
> At TPC, Chip made the excellent suggestion that we should look at
> supporting two different interfaces: one for C and one for C++.  For
> various reasons, these interfaces could offer the same functionality in
> quite different ways.
> 
> Any ideas on that?
> 
> Hildo


That is the direction I intend RFC 61 to go in; when I refer to "external*"
in it I am suggesting that the fortran linkage be C<use externalf> and so
on.

I think we should offer any number of interfaces, one for each language,
C, C++, Fortran, Lego Power Motor Language, anything that can be defined,
and have a clear expansion path for defining new definition languages, and
linking them in.  That is why I refer to the DefinitionStructure as a type
of object on its own, analogous to a compiled regular expression in perl5:
I hope that definitionstructure compilers will appear for various languages.

C is the compiled language I am most familiar with and I have been led to
believe that its data structure linkage is very well defined, making it
suitable for the example language, and the first language.  

I believe the RFC is a template for further, or more general, specs for
other languages, but C would be a good one to do first.  Due to the
similarity of C and C++ data structure definition syntax, maybe both of
those at the same time -- do I get to choose the letter for C++? I'd
like to leave that to the implementor, but C<externalcpp> is the first
thing that comes to mind, along with C<externalhpp> for class and function
definitions.

Would tieing a hash to an external C++ class import all the methods and
bless the hash into the appropriate package, or would two steps be required,
in order to better support variant types?  I think the two steps.  (It is
possible to tie something to one class and bless it to another, is it not?)

if we are to keep the package == namespace correlation, we'll need to
define strong subpackages in order to use object methods that exist within
a name space, that's my thought on applying RFC 61 version 2 to C++.


At your service,

David Nicol


-- 
                          David Nicol 816.235.1187 [EMAIL PROTECTED]

Reply via email to