From: Coey Minear Date: 2009-02-03T00:44:53+09:00 Subject: Re: Native gem roundup! Charles Oliver Nutter writes: > I'm curious what native gems/extensions people are typically using. In > general it seems like most native extensions fall into two categories: > > * They are wrappers around a C API/library, as in zlib, rmagick, nokogiri > * They are written for performance reasons, to implement a particular > algorithm in a native language or call a library for the same reasons > > And there's a lot of grey area, with some extensions falling in both > categories. > > Wrappers can now largely be handled by FFI, and I hope more and more of > them will use FFI as needed to access those libraries. But I'm concerned > about extensions written for performance, since Ruby 1.9 and JRuby do > almost as much to speed Ruby up. > > Ultimately, my quest is to eliminate Ruby's dependence on extensions for > things FFI or "faster Ruby" could do, since it will improve the future > for both the standard and alternative implementations. > > So, what native gems or extensions do you use? Why do you use them or > why do they exist? > > - Charlie > For me, they would be FastCGI and ruby-postgres, two more examples of wrapping a C library. (Technically, I currently run FastCGI as installed --- in 'site_ruby' --- rather than a gem; there was always a hiccup if I tried to install it as a gem, so I went with the quickest way to get it working.) As you may guess, this is a Rails application. FastCGI is used for Apache deployment; ruby-postgres is for accessing the PostgreSQL database. I know there are other options for Apache/web deployment (e.g. Mongrel), but this install is stable and other priorities take precedence over investigating alternative deployment configurations. For PostgreSQL, even if I moved to ruby-pg, that is still a C library wrapper. Anyways, just trying to answer your query. -- Coey Minear