Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
RPerl Compiler
Perl C++
branch: master

README.md

RPerl

RPerl is the optimizing compiler for the Perl 5 programming language. RPerl stands for Restricted Perl, in that we restrict our use of Perl to those parts which can be made to run fast. RPerl also stands for Revolutionary Perl, in that we hope RPerl's speed will help revolutionize the software development industry. RPerl might even stand for Roadrunner Perl, in that it RUNS REALLY FAST.

The input to the RPerl compiler is low-magic Perl 5 source code. RPerl converts the low-magic Perl 5 source code into C++ source code using Perl and/or C++ data structures. Inline::CPP converts the C++ source code into XS source code. Perl's XS tools and a standard C++ compiler convert the XS source code into machine-readable binary code, which can be directly linked back into normal high-magic Perl 5 source code.

The output of the RPerl compiler is fast-running binary code that is exactly equivalent to, and compatible with, the original low-magic Perl 5 source code input. The net effect is that RPerl compiles slow low-magic Perl 5 code into fast binary code, which can optionally be mixed back into high-magic Perl apps.

Many thanks to irc.perl.org:

#perl5 founder timtoady

#perl6 founder timtoady (again)

#perl11 founders ingy & rurban & willthechill (yours truly)

#perl11 members bulk88 & mst

#inline founders ingy (again) & nwatkiss

#inline members davido & mohawk & sisyphus

For more information, please see http://www.rperl.org

Copyright © 2013, 2014, 2015, William N. Braswell, Jr.. All Rights Reserved. This work is Free & Open Source; you can redistribute it and/or modify it under the same terms as Perl 5.20.0.

Perl may be copied only under the terms of either the Artistic License or the GNU General Public License, which may be found in the Perl 5 source kit.

For licensing details, please see http://dev.perl.org/licenses/

Something went wrong with that request. Please try again.