Mattia Barbon <[EMAIL PROTECTED]> wrote: > Hello, > I am not sure about this patch. It splits part of Parrot_load_lib > into a Parrot_init_lib(Interp, load_func_ptr, init_func_ptr) > where load/init_func_ptr are pointers to the function loadlib calls. The > objective is allowing dynamic PMCs linked inside a larger library > or maybe an executable. For example Ponie might have Perl5IV, > Perl5PVCV, etc. PMCs linked inside libponie,
For PMC libraries I'd rather have that done in the PMCs init code. This could be automated for a bunch of PMC files of one language. E.g. a utility concats the .c files generated from .pmc and chains the init functions, so that one init call registers all PMCs. But your solution seems to be just a generalization of this. Anyway, we really should avoid that each PMC gets loaded as one DLL and eats up OS handles. leo