[#321574] Regular Expressions — Mmcolli00 Mom <mmc_collins@...>

Hi everyone.

15 messages 2008/12/01

[#321655] Ruby cgi script — ZippySwish <fischer.jan@...>

I put "script.rb" into the cgi-bin folder of my webhost, but nothing's

12 messages 2008/12/02

[#321733] FFI 0.2.0 — "Wayne Meissner" <wmeissner@...>

Greetings Rubyists.

20 messages 2008/12/03

[#321920] Force a program to stop if runtime exceeds given duration — Aldric Giacomoni <"aldric[remove]"@...>

Any idea how to do that?

25 messages 2008/12/04
[#321924] Re: Force a program to stop if runtime exceeds given duration — "Glen Holcomb" <damnbigman@...> 2008/12/04

On Thu, Dec 4, 2008 at 10:04 AM, Aldric Giacomoni <"aldric[remove]"@

[#322011] Re: Force a program to stop if runtime exceeds given duration — Ron Fox <fox@...> 2008/12/05

See http://www.ruby-doc.org/core-1.9/classes/Process.html#M003012

[#322016] Re: Force a program to stop if runtime exceeds given duration — Aldric Giacomoni <"aldric[remove]"@...> 2008/12/05

Everybody automatically assumes that rubyists are using Linux - sadly,

[#321969] Are there any Ruby Technical Writers here? — Vito Fontaine <vito.matro@...>

I am a beginner with Ruby who was interested in writing some programs.

15 messages 2008/12/04
[#321975] Re: Are there any Ruby Technical Writers here? — Robert Klemme <shortcutter@...> 2008/12/04

On 04.12.2008 22:43, Vito Fontaine wrote:

[#321984] Re: Are there any Ruby Technical Writers here? — Vito Fontaine <vito.matro@...> 2008/12/05

Robert Klemme wrote:

[#322014] Proximity searches in Ruby — Stuart Clarke <stuart.clarke1986@...>

Does Ruby have the ability to perform proximity searches on data. For

14 messages 2008/12/05
[#322056] Re: Proximity searches in Ruby — Ilan Berci <coder68@...> 2008/12/05

No proximity searches with 1.8.. you would need a full fledged text

[#322073] shoes 2 (raisins) is go. — _why <why@...>

Salutations and hi.

13 messages 2008/12/06

[#322260] Help on algorythm — Helder Oliveira <hrpoliveira@...>

Guys i have been trying to make this algorythm but with no sucess, can

13 messages 2008/12/09
[#322261] Re: Help on algorythm — "Glen Holcomb" <damnbigman@...> 2008/12/09

On Tue, Dec 9, 2008 at 7:44 AM, Helder Oliveira <hrpoliveira@gmail.com>wrote:

[#322283] Completely new programmer lacks direction — Cameron Carroll <ubernoobs@...>

Hi. I recently picked up a beginning ruby book, having only lightly

17 messages 2008/12/09

[#322285] compare 2 text files - check for difference - Please help — Mmcolli00 Mom <mmc_collins@...>

Hi. I want to take two files that are supposed to be identical, then ook

12 messages 2008/12/09
[#322301] Re: compare 2 text files - check for difference - Please help — Brian Candler <b.candler@...> 2008/12/09

Mmcolli00 Mom wrote:

[#322306] Re: compare 2 text files - check for difference - Please help — Mmcolli00 Mom <mmc_collins@...> 2008/12/09

require 'diff/lcs/Array'

[#322417] why Hash corrupts 'key' object ? — Dmitry Perfilyev <dmitry1976@...>

Hi, I have next script:

13 messages 2008/12/10

[#322464] Q: FFI and C++? — Jeremy Henty <onepoint@...>

If I want to wrap a C++ library using FFI, can it cope with the name

14 messages 2008/12/11

[#322516] Invoking Ruby code from a low-level language? — Alex Fulton <a.fulton@...>

Hi, my sincerest apologies if this question has already been answered

11 messages 2008/12/11

[#322529] parallel method return value — Louis-Philippe <default@...>

Hi all,

17 messages 2008/12/12

[#322566] How to run background processes (more than 1 worker) parallely. — "Deepak Gole" <deepak.gole8@...>

Hi

10 messages 2008/12/12

[#322624] singleton methods vs. meta instance methods — Daniel DeLorme <dan-ml@...42.com>

If I understand the ruby object model correctly, then an object's

15 messages 2008/12/13

[#322705] ruby 1.9.1: Encoding trouble: broken US-ASCII String — Tom Link <micathom@...>

Hi,

22 messages 2008/12/14

[#322710] Help with an "easy" regular expression substitution — Iñaki Baz Castillo <ibc@...>

Hi, I'm getting crazy to get a theorically easy substitution:

16 messages 2008/12/14

[#322819] Pure Ruby Zlib::GzipWriter — Daniel Berger <djberg96@...>

Hi,

53 messages 2008/12/15
[#323877] Re: Pure Ruby Zlib::GzipWriter — Daniel Berger <djberg96@...> 2009/01/03

[#323903] Re: Pure Ruby Zlib::GzipWriter — Roger Pack <rogerpack2005@...> 2009/01/04

[#324011] Re: Pure Ruby Zlib::GzipWriter — Daniel Berger <djberg96@...> 2009/01/05

[#324442] Re: Pure Ruby Zlib::GzipWriter — Luis Lavena <luislavena@...> 2009/01/10

On Jan 9, 9:26=A0pm, "Charles L." <aquas...@gmail.com> wrote:

[#322987] Using ruby hash on array — Stuart Clarke <stuart.clarke1986@...>

I would like to process some data from an array and using hash to

14 messages 2008/12/17

[#323085] Ruby and Rails supported on 10gen — "Jim Menard" <jim.menard@...>

http://www.10gen.com/blog/2008/12/ruby-support-on-10gen

11 messages 2008/12/18

[#323166] Dreaming of a Ruby Christmas (#187) — Matthew Moss <matt@...>

-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

11 messages 2008/12/19

[#323204] get first and last line from txt file - how? — Mmcolli00 Mom <mmc_collins@...>

I have txt file with date/time stamps only. I want to grab the first

19 messages 2008/12/20
[#323205] Re: get first and last line from txt file - how? — Tim Hunter <TimHunter@...> 2008/12/20

Mmcolli00 Mom wrote:

[#323207] Re: get first and last line from txt file - how? — "Yaser Sulaiman" <yaserbuntu@...> 2008/12/20

I'm just wondering..

[#323273] how to make installing Ruby easier for amateurs — Tom Cloyd <tomcloyd@...>

Greetings!

21 messages 2008/12/22

[#323312] Name that data structure! — Simon Chiang <simon.a.chiang@...>

I'm using a data structure that I'm sure has been implemented and

18 messages 2008/12/22
[#323314] Re: Name that data structure! — "Gregory Brown" <gregory.t.brown@...> 2008/12/22

On Mon, Dec 22, 2008 at 5:38 PM, Simon Chiang <simon.a.chiang@gmail.com> wrote:

[#323342] Are all Ruby built-in objects thread safe? — "Just Another Victim of the Ambient Morality" <ihatespam@...>

Are all built-in objects thread safe? For example, if I have an array

23 messages 2008/12/23
[#323346] Re: Are all Ruby built-in objects thread safe? — Yukihiro Matsumoto <matz@...> 2008/12/23

Hi,

[#323519] What does 'Monkey Patching' exactly Mean in Ruby? — "Yaser Sulaiman" <yaserbuntu@...>

According to Wikipedia, a monkey patch[1] is:

36 messages 2008/12/27
[#323813] Re: What does 'Monkey Patching' exactly Mean in Ruby? — Jg W Mittag <JoergWMittag+Usenet@...> 2009/01/02

Phlip wrote:

[#323832] Re: What does 'Monkey Patching' exactly Mean in Ruby? — "David A. Black" <dblack@...> 2009/01/02

Hi --

[#323644] Why Ruby? — Mike Stephens <rubfor@...>

I have never seen or heard of Ruby in a corporate context. The single

35 messages 2008/12/30

[#323668] Ruby 1.9.1 RC1 is released — "Yugui (Yuki Sonoda)" <yugui@...>

Hi, folks

21 messages 2008/12/30

Re: Calling Ruby from Delphi

From: Mohit Sindhwani <mo_mail@...>
Date: 2008-12-26 05:40:55 UTC
List: ruby-talk #323458
Rob Ram wrote:
> I want to call an embedded ruby function from Delphi 2009. A C or C++
> example is also ok.  For example on the Ruby side:
>
>  def myFunction(a,b,c)
>    rv1=a*b -c
>    rv2=a**2 + b**2
>    rv3=b*c
>    return rv1, rv2, rv3
>   end
>
>  The above function is just some non-sense, but hopefully easy to use as
> an example. MyExample.rb contains the above script.
>
> On the Delphi side:
>
> Starting with:
>
> fState := 0;
> ruby_init;
> ruby_init_loadpath;
> rb_set_safe_level(0);
> ruby_script('embedded'); // or should it be ruby_script(‘ruby’)
>
>
> Ok now I have no clue as to what top do next. Somehow MyExample.rb must
> be loaded.
>
> Maybe:
> rb_load_file(‘MyExample.rb’) ???
>
> Next call myFunction(a,b,c) ???
>
> I found rb_funcall2 and VALUE is defined as:  typedef unsigned long
> VALUE
> However I do not have documentation that explains the meaning of recv or
> how to get the parameter for recv.
>
>
>
> VALUE rb_funcall2(VALUE recv,
>     ID   mid,
>     int   argc,
>     const VALUE *   argv
>            )
>
>
> Any help or suggestions are appreciated.
>   
Hi Rob,

This is some of the stuff that I use in a Borland C++ Builder 
application - not sure if it helps you.  The sequence is exaqctly the 
same as what the online version of PickAxe recommends, if I remember 
correctly.

/* Initialize the Ruby VM */
void rubyVM_initialize()
{
    ruby_init();
    ruby_init_loadpath();
    ruby_script("embedded");  //set a name that the script will use
    return;
}

/* Finalize the Ruby VM */
void rubyVM_finalize()
{
    ruby_finalize();
}

/* Functions to call the functions in Ruby script */
static VALUE wrap_sum(VALUE args) {
  VALUE *values = (VALUE *)args;
  VALUE summer = values[0];
  VALUE max = values[1];
                   //object, function, count?, argument
  return rb_funcall(summer, id_sum, 1, max);
}

static VALUE protected_sum(VALUE summer, VALUE max) {
  int error;
  VALUE args[2];
  VALUE result;
  args[0] = summer;
  args[1] = max;
  result = rb_protect(wrap_sum, (VALUE)args, &error);
  return error ? Qnil : result;
}

/* Sample script execution */
int run_a_script(void)
{
  int value;
  int *next = Values;
  char output[200];

  /* Call ruby VM init first */
  rubyVM_initialize();
  rb_require ("sum.rb");  //script that you want to use

  /* Instantiate the class (Summer) you want to use */
  VALUE summer = rb_class_new_instance(0, 0,
          rb_const_get(rb_cObject, rb_intern("Summer")));

  /* Access the function in that class */
  /* Note id_sum is a global variable below */
  id_sum = rb_intern("sum");  //the function

  while (value = *next++) {
    /* The next line does the hard work through 2 functions */
    VALUE result = protected_sum(summer, INT2NUM(value));
    if (NIL_P(result))
    {
      sprintf(output,"Sum to %d doesn't compute!\n", value);
    }
    else
    {
      sprintf(output,"Sum to %d is %d\n", value, NUM2INT(result));
    }
    //MessageBox(NULL,output,"Ruby result!",MB_OK);

  }

  //rubyVM_finalize();
  //return;
}

I'm sorry I'm in a bit of a rush, but do ask again - I'll reply with 
more details if this doesn't help.  Essentially, I think what you need is:
*   rb_require ("sum.rb");  //script that you want to use
*   VALUE result = protected_sum(summer, INT2NUM(value));
*   See the wrapped functions to pack the parameters and safely call the 
function
*   rb_funcall(summer, id_sum, 1, max); // I think this is object, 
function_number, # of parameters, max

Hopefully this will help: 
http://whytheluckystiff.net/ruby/pickaxe/html/ext_ruby.html

Cheers
Mohit.


In This Thread