If you can control the environment good enough, the Inline and Inline::C suite might be interesting to you - it allows you to easily call C code from within Perl, so you can write your tests in Perl and test C code with them. It also allows you to call Perl code from C, so you can implement parts in Perl first. They also keep the compiled C code around, so the second invocation is fast.

From what I know, it's also possible to redistribute the cached compiled code from a first invocation, so you could even distribute a binary-only version.

There is no real Perl -> C compiler, so you will have to reimplement all your Perl stuff in C, if you really need that. But the tests you wrote when writing your Perl stuff can still work when you move over to C, if you use Inline::C and keep the API you specified from Perl.

perl -MHTTP::Daemon -MHTTP::Response -MLWP::Simple -e ' ; # The $d = new HTTP::Daemon and fork and getprint $d->url and exit;#spider ($c = $d->accept())->get_request(); $c->send_response( new #in the HTTP::Response(200,$_,$_,qq(Just another Perl hacker\n))); ' # web

In reply to Re: Re-using Perl script into compiled programs by Corion
in thread Re-using Perl script into compiled programs by rivandemo

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.