Asp Forum
Home
|
Login
|
Register
|
Search
Forums
>
comp.lang.ruby
Calling perl function in ruby
Loga Ganesan
2/24/2009 8:55:00 AM
Below code is used for calling c function in ruby.
#! /usr/bin/ruby
require '/usr/lib/ruby/1.8/inline.rb'
puts "Inline module......"
class MyTest
inline do |builder|
builder.c "
long factorial(int max) {
int i=max, result=1;
while (i >= 2) { result *= i--; }
return result;
}"
end
end
t = MyTest.new()
fact = t.factorial(5)
puts fact
Question:
Likewise, instead of c I have to write a perl function and should call
it?
Is there any way?
--
Posted via
http://www.ruby-...
.
1 Answer
Brian Candler
2/24/2009 9:25:00 AM
0
Loga Ganesan wrote:
> Likewise, instead of c I have to write a perl function and should call
> it?
>
> Is there any way?
Only by embedding a whole Perl interpreter inside your Ruby interpreter.
Usually it's better to make the Perl code a completely separate process,
and use some form of IPC to talk to it. Simplest to set up are probably
HTTP, or XMLRPC over HTTP.
It depends on your problem domain. Maybe starting a Perl process using
IO.popen(...) and talking to it over (its) stdin/stdout will be easier.
If the data is binary, then a simple binary protocol like (4 bytes
length) followed by (N bytes of data) will be much faster than wrapping
the request in XML and HTTP.
--
Posted via
http://www.ruby-...
.
Servizio di avviso nuovi messaggi
Ricevi direttamente nella tua mail i nuovi messaggi per
Calling perl function in ruby
Inserendo la tua e-mail nella casella sotto, riceverai un avviso tramite posta elettronica ogni volta che il motore di ricerca troverà un nuovo messaggio per te
Il servizio è completamente GRATUITO!
x
Login to ForumsZone
Login with Google
Login with E-Mail & Password