use Inline Ruby; my $obj = new Iterator(1, "2", [3], {4 => 5}); $obj->each_iter(sub { use Data::Dumper; my $element = shift; print "It looks like Ruby passed me this: ", Dumper($element); }); __END__ __Ruby__ class Iterator def initialize(*elements) @elements = elements end def each @elements.each { |x| yield x } end end