http://qs1969.pair.com?node_id=11104374


in reply to Re: About using rperl
in thread About using rperl

Yes I agree! It would be great to see an example of how to call a sub in the shared library from regular Perl code.

Replies are listed 'Best First'.
Re^3: About using rperl
by Laurent_R (Canon) on Aug 13, 2019 at 10:26 UTC
    It would be great to see an example of how to call a sub in the shared library
    I haven't seen such example of code, but I attended a talk by Will Braswell a few months ago, and asked whether it is feasible, and Will answered that it is possible. So you could have your CPU intensive nested loops or other computations in a RPerl module, and the rest in a regular Perl program. This looks very interesting to me, because it seems easier to write a RPerl module than an XS module.
      Please excuse my ignorance, but wouldn't this imply having two runtime environments for Perl communicating via sub calls?

      Cheers Rolf
      (addicted to the Perl Programming Language :)
      Wikisyntax for the Monastery FootballPerl is like chess, only without the dice

        I'm not sure how this would work exactly, but my understanding (I could be wrong) was that RPerl components are compiled to binaries (after a translation phase to C++) and probably don't need a specific runtime environment. So you would only need to include the proper modules in your Perlrapper.
        Interesting, so instead of converting the Perl code to a shared library, one could convert it to a .cpp source file instead which is then included into the main Perl script using gcc and Inline::CPP ? Alternatively, write a wrapper .cpp file that links with the generated shared library by giving a libs parameter to Inline::CPP ? It would still be great if someone could present a simple working (tutorial-type) example.. :)
Re^3: About using rperl
by Anonymous Monk on Aug 14, 2019 at 02:07 UTC