What is a binding for Ruby?

Hello everyone,

I need to use voice dictation software Dragon NaturallySpeaking on
Windows 2000. I would like use IBM's ViaVoice for Linux
unfortunately, I work at company that shuns the idea of using Linux.
For that reason I must use Windows.

In general, I have been trying to utilize plotting packages that have
not been written for Windows 2000. Users of this group quite often
recommend software to me and they say something like that software has
a binding for Ruby.

I'm guessing I have used bindings for Ruby and don't even know it.

Pardon my ignorance:

What is a binding for Ruby?

How can I use a binding for Ruby?

How can identify that something is a binding for Ruby?

Do I need a compiler of some sort?

Thank you,

Todd

A binding (in this context) is an interface that lets Ruby use a certain library or piece of software. For example, RMagick is a Ruby binding for ImageMagick/GraphicsMagick, and it lets you work with those libraries using Ruby. When talking about Ruby bindings, you can be sure that the other piece of software is not written in Ruby, it is written in C, C++, etc.

If there are Windows binaries, you just install them, I think. If there are no Windows binaries, you would have to compile them yourself.

HTH,
Mark

ยทยทยท

On Jun 17, 2004, at 11:58 PM, Todd Gardner wrote:

Hello everyone,

I need to use voice dictation software Dragon NaturallySpeaking on
Windows 2000. I would like use IBM's ViaVoice for Linux
unfortunately, I work at company that shuns the idea of using Linux.
For that reason I must use Windows.

In general, I have been trying to utilize plotting packages that have
not been written for Windows 2000. Users of this group quite often
recommend software to me and they say something like that software has
a binding for Ruby.

I'm guessing I have used bindings for Ruby and don't even know it.

Pardon my ignorance:

What is a binding for Ruby?

How can I use a binding for Ruby?

How can identify that something is a binding for Ruby?

Do I need a compiler of some sort?

Todd Gardner wrote:

In general, I have been trying to utilize plotting packages that have
not been written for Windows 2000. Users of this group quite often
recommend software to me and they say something like that software has
a binding for Ruby.

I'm guessing I have used bindings for Ruby and don't even know it.

Pardon my ignorance:

What is a binding for Ruby?

A "binding" indicates that the underlying software library (usually written in C or C++, but always compiled) has a way to access it from Ruby. As an example, mysql is a C program, but you can use it with one of several Ruby bindings. A binding just means you can access the functionality of the compiled library from Ruby.

How can I use a binding for Ruby?

This is dependent on the library that the binding is for.

How can identify that something is a binding for Ruby?

A more pertinent question is, does this library have a ruby binding? Sometimes the bindings are part of the base software, but most of the time the binding is something a Ruby fan wrote to interface with the library.

For example, look at the Library/GUI section of the RAA:
http://raa.ruby-lang.org/cat.rhtml?category_major=Library;category_minor=GUI

Most of these are Ruby bindings to C or C++ GUI libraries. Someone has written C glue code to make these libraries usable in Ruby alone. Just to name a few, fxruby is a binding to the FOX GUI toolkit, and qtruby is a binding to the QT GUI toolkit. You'll find on the RAA and elsewhere many Ruby bindings to popular software libraries.

Do I need a compiler of some sort?

Often this is true, unless you can find a binary distribution of the binding package that is compatible with your version of the library.

Once you have built the binding correctly, you will not need a compile to write a Ruby application or library that uses the binding.

HTH,

Brett Williams