You want a Ruby extension? Talk to me, baby

Hi,

I've figured that it's probably worth my time to learn how to better
write Ruby extensions (as a way to practice my C).

Are there any C or C++ libraries out there that someone would
appreciate an open-sourced Ruby extension for?

Thanks,
Joe

Improving, expanding, cleaning up and otherwise working on the mysql c
binding would certainly be something I'd appreciate. Though I do not
know the status of it's development activity...

···

On 1/8/06, Joe Van Dyk <joevandyk@gmail.com> wrote:

Hi,

I've figured that it's probably worth my time to learn how to better
write Ruby extensions (as a way to practice my C).

Are there any C or C++ libraries out there that someone would
appreciate an open-sourced Ruby extension for?

Joe Van Dyk ha scritto:

Hi,

I've figured that it's probably worth my time to learn how to better
write Ruby extensions (as a way to practice my C).

Are there any C or C++ libraries out there that someone would
appreciate an open-sourced Ruby extension for?

enhancing/updating ruby-gst, the bindings for gstreamer.
IIRC there are no updates to hstreamer 0.10, yet.

Joe Van Dyk <joevandyk@gmail.com> writes:

Hi,

I've figured that it's probably worth my time to learn how to better
write Ruby extensions (as a way to practice my C).

Are there any C or C++ libraries out there that someone would
appreciate an open-sourced Ruby extension for?

I'd *love* to see a binding for Metakit:
http://www.equi4.com/metakit/

···

Thanks,
Joe

--
Christian Neukirchen <chneukirchen@gmail.com> http://chneukirchen.org

} Hi,
}
} I've figured that it's probably worth my time to learn how to better
} write Ruby extensions (as a way to practice my C).
}
} Are there any C or C++ libraries out there that someone would
} appreciate an open-sourced Ruby extension for?

How about libical? It seems to be the gold standard for ical file stuff and
the pure Ruby ical APIs I've tried to use don't seem to do the job as well
as I'd like.

} Thanks,
} Joe
--Greg

···

On Sun, Jan 08, 2006 at 05:29:01PM +0900, Joe Van Dyk wrote:

if you want to wade into the deep end, I would like a method that would
tell me about everything that is in scope when the method is called,
and classify the objects-in-scope as instance variables, class variables, class
names, global constants, local variables, module names--whatever they might be.
Symbol.all_symbols is just a tease.

The next thing i would like to do is to be able to "unwind" the
scope by going "up" one level and perform the same symbol dump as defined above,
except with the new scope. Recurse until at top level. Being able to filter on
any particular class of object would just be icing.

Not even sure if this is possible, but it would sure be educational.

Joe Van Dyk wrote:

···

Hi,

I've figured that it's probably worth my time to learn how to better
write Ruby extensions (as a way to practice my C).

Are there any C or C++ libraries out there that someone would
appreciate an open-sourced Ruby extension for?

Thanks,
Joe

I would like to see the Packet Capture Library (libpcap) updated.
This library includes classes to access the TCP/IP header and
lets you monitor network traffic.
Currently, the code is for Ruby 1.4.x. This is a very interesting project
and it may be helpful since you are not starting at ground zero.

I have plans to do the conversion, but it is low on my priority list.

If you want the tar file, just send me an email.

···

On Jan 8, 2006, at 2:29 AM, Joe Van Dyk wrote:

Hi,

I've figured that it's probably worth my time to learn how to better
write Ruby extensions (as a way to practice my C).

Are there any C or C++ libraries out there that someone would
appreciate an open-sourced Ruby extension for?

--
Jim Freeze

Joe,
I am new to Ruby and I like to do things the "easy" way.

I use DB2 on my job under AIX, an easy, "natural" binding to DB2 would be
great.

Also, since you appear to have so much energy, how about tackling the task
of developing a "native" Ruby GUI environment?
I hate everything that is out there. I mean something like the Java GUI
environment, but for Ruby.

Thank you

Victor

···

On 1/8/06, Joe Van Dyk <joevandyk@gmail.com> wrote:

Hi,

I've figured that it's probably worth my time to learn how to better
write Ruby extensions (as a way to practice my C).

Are there any C or C++ libraries out there that someone would
appreciate an open-sourced Ruby extension for?

Thanks,
Joe

http://dynagraph.org

  Dynagraph is a set of dynamic graph drawing engines, based on
  the work of the Graphviz team at AT&T Research, ...

  Dynagraph is a platform-neutral library written in C++. It can
  be used directly in C++ programs, in Windows programs via COM
  wrapper classes, or in other environments using the executable
  with input and output over pipes.

-r

···

At 5:29 PM +0900 1/8/06, Joe Van Dyk wrote:

Are there any C or C++ libraries out there that someone would
appreciate an open-sourced Ruby extension for?

--
Technical editing and writing, programming, and web development:
  http://www.cfcl.com/rdm/resume.html

Contact information: rdm@cfcl.com, +1 650-873-7841

Pff, writing extensions sucks. Just use RubyInline and save yourself half the hassle.

···

On Jan 8, 2006, at 12:29 AM, Joe Van Dyk wrote:

Hi,

I've figured that it's probably worth my time to learn how to better
write Ruby extensions (as a way to practice my C).

--
Eric Hodel - drbrain@segment7.net - http://segment7.net
This implementation is HODEL-HASH-9600 compliant

http://trackmap.robotcoop.com

Joe Van Dyk wrote:

Are there any C or C++ libraries out there that someone would
appreciate an open-sourced Ruby extension for?

I might be out of date, perhaps it's been done and I don't
know, but I'd really like a bridge between Ruby-GTK and
ImageMagick, to display dynamically generated images from
IM using GTK.

How about libical? It seems to be the gold standard for ical file stuff and
the pure Ruby ical APIs I've tried to use don't seem to do the job as well
as I'd like.

I second the vote for getting libical going in a Ruby environment.

Also, Victor, you might want to check out Sam Ruby's interface for DB2.
http://www.intertwingly.net/blog/2005/12/12/DB2-interface-for-Ruby-progress

Cheers,
Bob Aman

You can get quite far with set_trace_func:
http://ruby-doc.org/core/classes/Kernel.html#M001978

Just store the binding on a stack for all events like "call" and remove it for "return".

I'm sure with a decent C extension this will be more efficient and probably more feature rich.

Kind regards

    robert

···

Lou Vanek <vanek@acd.net> wrote:

if you want to wade into the deep end, I would like a method that
would tell me about everything that is in scope when the method is called,
and classify the objects-in-scope as instance variables, class
variables, class names, global constants, local variables, module
names--whatever they might be. Symbol.all_symbols is just a tease.

The next thing i would like to do is to be able to "unwind" the
scope by going "up" one level and perform the same symbol dump as
defined above, except with the new scope. Recurse until at top level.
Being able to filter on any particular class of object would just be
icing.
Not even sure if this is possible, but it would sure be educational.

I'm not sure about MS SQL bindings but IIRC they use ODBC and hence are only present on Windows builts. If so, integrating http://www.freetds.org then would be a good idea.

    robert

···

Gregory Brown <gregory.t.brown@gmail.com> wrote:

On 1/8/06, Joe Van Dyk <joevandyk@gmail.com> wrote:

Hi,

I've figured that it's probably worth my time to learn how to better
write Ruby extensions (as a way to practice my C).

Are there any C or C++ libraries out there that someone would
appreciate an open-sourced Ruby extension for?

Improving, expanding, cleaning up and otherwise working on the mysql c
binding would certainly be something I'd appreciate. Though I do not
know the status of it's development activity...

Is there any documentation on how to use RubyInline to interact with a
C/C++ library?

Joe

···

On 1/9/06, Eric Hodel <drbrain@segment7.net> wrote:

On Jan 8, 2006, at 12:29 AM, Joe Van Dyk wrote:

> Hi,
>
> I've figured that it's probably worth my time to learn how to better
> write Ruby extensions (as a way to practice my C).

Pff, writing extensions sucks. Just use RubyInline and save yourself
half the hassle.

You don't need an extension for that. You've already got Ruby-GTK and RMagick. Just glue them together with Ruby.

···

On Jan 9, 2006, at 6:38 PM, Clifford Heath wrote:

Joe Van Dyk wrote:

Are there any C or C++ libraries out there that someone would
appreciate an open-sourced Ruby extension for?

I might be out of date, perhaps it's been done and I don't
know, but I'd really like a bridge between Ruby-GTK and
ImageMagick, to display dynamically generated images from
IM using GTK.

--
Eric Hodel - drbrain@segment7.net - http://segment7.net
This implementation is HODEL-HASH-9600 compliant

http://trackmap.robotcoop.com

MS SQL uses ODBC or ADO.
There *is* an ODBC for *nix. No clue on it's reliability.

···

On 1/8/06, Robert Klemme <bob.news@gmx.net> wrote:

Gregory Brown <gregory.t.brown@gmail.com> wrote:
> On 1/8/06, Joe Van Dyk <joevandyk@gmail.com> wrote:
>> Hi,
>>
>> I've figured that it's probably worth my time to learn how to better
>> write Ruby extensions (as a way to practice my C).
>>
>> Are there any C or C++ libraries out there that someone would
>> appreciate an open-sourced Ruby extension for?
>>
> Improving, expanding, cleaning up and otherwise working on the mysql c
> binding would certainly be something I'd appreciate. Though I do not
> know the status of it's development activity...

I'm not sure about MS SQL bindings but IIRC they use ODBC and hence are only
present on Windows builts. If so, integrating http://www.freetds.org then
would be a good idea.

i wasn't aware of set_trace_func.
good news: it gives you a binding.
bad news: the binding appears to be largely opaque except
for a few "windows" into the binding, such as,

   eval("local_variables", binding)

and, of course, global_variables and 'self', but maybe that's all
there is to a binding.

So your idea of just pushing and popping bindings is probably
sufficient.
Thanks. Interesting idea.

Robert Klemme wrote:

···

Lou Vanek <vanek@acd.net> wrote:

if you want to wade into the deep end, I would like a method that
would tell me about everything that is in scope when the method is called,
and classify the objects-in-scope as instance variables, class
variables, class names, global constants, local variables, module
names--whatever they might be. Symbol.all_symbols is just a tease.

The next thing i would like to do is to be able to "unwind" the
scope by going "up" one level and perform the same symbol dump as
defined above, except with the new scope. Recurse until at top level.
Being able to filter on any particular class of object would just be
icing.
Not even sure if this is possible, but it would sure be educational.

You can get quite far with set_trace_func:
module Kernel - RDoc Documentation

Just store the binding on a stack for all events like "call" and remove it for "return".

I'm sure with a decent C extension this will be more efficient and probably more feature rich.

Kind regards

   robert

Bob, Thank you.

···

On 1/8/06, Bob Aman <vacindak@gmail.com> wrote:

> How about libical? It seems to be the gold standard for ical file stuff
and
> the pure Ruby ical APIs I've tried to use don't seem to do the job as
well
> as I'd like.

I second the vote for getting libical going in a Ruby environment.

Also, Victor, you might want to check out Sam Ruby's interface for DB2.

DB2 interface for Ruby progress

Cheers,
Bob Aman

There's a complete tutorial that ships with RubyInline.

···

On Jan 9, 2006, at 11:56 AM, Joe Van Dyk wrote:

On 1/9/06, Eric Hodel <drbrain@segment7.net> wrote:

On Jan 8, 2006, at 12:29 AM, Joe Van Dyk wrote:

Hi,

I've figured that it's probably worth my time to learn how to better
write Ruby extensions (as a way to practice my C).

Pff, writing extensions sucks. Just use RubyInline and save yourself
half the hassle.

Is there any documentation on how to use RubyInline to interact with a
C/C++ library?

--
Eric Hodel - drbrain@segment7.net - http://segment7.net
This implementation is HODEL-HASH-9600 compliant

http://trackmap.robotcoop.com