Re: Perl extension for PHP

From: Date: Thu, 08 May 2003 20:00:59 +0000
Subject: Re: Perl extension for PHP
References: 1  Groups: php.pear.dev 
Request: Send a blank email to pear-dev+get-16060@lists.php.net to get a copy of this message
Hi, I used the last days to have a look at the ext/rpc stuff and it looks like a good way for writing a php-perl-Extension ;-) I also asked the author of the "perl-in-php" Extension if he wants to maintain his Extension any longer but he didn't answer, yet. during the next days/weeks/months I'll create a new Perl-Extension, based upon my old one and, maybe, parts of perl-in-php and the ext/rpc-skeleton. johannes On Saturday 03 May 2003 22:27, George Schlossnagle wrote: > It would be really nice to write this for php5 using the ext/rpc > sketelon. That way you could have a much tighter bundling (possible in > php4 as well, fwiw). > > George > > On Saturday, May 3, 2003, at 04:04 PM, Jesus M. Castagnetto wrote: > > Is this similar to the perl-in-php extension? > > (http://msalem.translator.cx/perlinphp.php) > > > > In any case, I think it would be OK to have in PECL. That will > > complement the > > hooks from PHP to the other languages most people use: Java, Python > > and Perl, > > not to forget InlineC. > > > > At some point I tried to have perl-in-php, the PECL python and the Java > > extension working, but had not much luck on my old Solaris box. > > Perhaps I > > should try again just to be devious ;-) > > > > +1 for inclusion to PECL with a caveat. > > > > The caveat is that I had not compiled/tested it yet, just took a quick > > look at > > the C code and the example. > > > > One thing though. Perhaps it will be good to have *real* INI entries > > registered > > in the code, if you need them, and not add '42' and 'foobar' > > <grin>. > > Some of > > the tools we have made for the documentation will extract those when > > adding > > them to the manual entry, and that will look funny. > > > > Also, talking to the author of 'perl-in-php' might also be good to see > > what > > code can be shared to improve the final extension. > > > > --- Johannes Schlueter <phpng@schlueters.de> wrote: > >> Hi there, > >> > >> Summary > >> ======= > >> > >> I've written a PHP Extension to embed a perl interpreter to PHP > >> and would like to publish it via pear/pecl. > >> > >> Requirements > >> ============ > >> > >> PHP 4.2.2, 4.2.3, 4.3, 4.3.1 (tested versions) > >> Perl 5.8.0 (due to API changes no older versions supported) > >> Tested using a Linux box > >> > >> What can it do > >> ============== > >> > >> At the moment this is a rather simple extension, if enough > >> people are interested in it I can spend more time on it. > >> At the moment you can create an perl interpreter, let the > >> interpreter eval some perl code, execute a perl sub and > >> manipulate (read/write) scalar perl variables using a few > >> PHP-Extension functions. > >> the prototypes of thes functions look like > >> > >> void perl_init(void) > >> Inits the perl interpreter > >> bool perl_eval(string source) > >> Parses and executes some perl code given as paramter > >> mixed perl_call(string name, [array param]) > >> Calls a perl sub called name with the paramters param > >> Returns the perl return value if perl returns a scalar > >> variable, only scalar paramters in param alloud > >> mixed perl_get_var(string name) > >> Returns the value of the (scalar) parl variable name. > >> name needs to be in global context of the perl-script > >> bool perl_set_var(string name, mixed value) > >> Sets the perl variable name with the value value > >> > >> Where required this extension does a little typecasting > >> between perl and PHP values. (PHP bool -> perl int, scalar > >> variables hold their type, other types arn't supported, yet) > >> > >> Usage > >> ===== > >> > >> see included example perl.php > >> > >> Problems > >> ======== > >> > >> - C-written perl modules don't work (see perlembed(1) about > >> compiling embeded perl interpreters using perl modules > >> - Accessing non-existing variables or eval'ing bad perl-code > >> might result in segfaults > >> - print-calls in perl scripts while using an PHP-SPI different > >> from CLI or CGI are not send to the zend output stream but > >> somewhere > >> > >> Installation: > >> ============= > >> > >> Fetch http://www.schlueters.de/perl-pre0.1.tar.bz2 > >> extract it > >> to php-src/ext/ configure PHP using --with-perl=DIR were DIR > >> is the location of perl.h and libperl.so (on my box, both are > >> located at /usr/lib/perl5/5.8.0/i686-linux/CORE/). I didn't > >> manage compiling it using phpize, I'd be glad if someone could > >> help me with that. > >> > >> About me > >> ======== > >> Just a few sentences about the guy how has to much spare time: > >> I'm a 21 year old student, living at Munich/Germany. I'm > >> using computers since I'm 14 years old, my first PHP scripts > >> are dated on April 25th, 2000. > >> > >> > >> Now I'd like to get some comments on this thing here and mybe > >> even some +1 for adding it to pear, a better documentation > >> is in work, but the explainations above and the example > >> script should help you out ;-) > >> > >> johannes

« previous php.pear.dev (#16060) next »