I was wondering if someone has examples of defining and then
instantiating class objects in the C API.  While I see stuff like
NEWOBJ and rb_class_new in the Ruby source code, it's not mentioned
specifically in the README.EXT nor in the "pickaxe" book, so I was
hoping to find more examples of how this should be done.

Why?  Well, as part of my quest to become more intimate with Ruby,
I'm gradually working on porting a Tcl extension I have been kicking
around for a while.  This Tcl extension provides a command called
"getprocs" that returns an array containing all the process
information on that system stored in a format that makes it easy to
traverse this process tree by uid.  (Yeah, I could just do a "ps",
then go to great lengths to massage the output, but figured it was
just as easy to open the procfs and build up the array that way.)  I
then have a script that uses this information to enforce certain
limits (max # processes per user, max mem per user), as well as try
to nice down processes that might be runaways.  

The reason why I did all of this in Tcl is so that it would be fast
and easy to customize it as needs warranted.  Originally I had a
vastly more simplistic version of this entirely in C (only watched
for runaway processes), but turned out to be a pain to maintain and
enhance.  Also, about that time I was learning Tcl, so thought it
might be cool to write this Tcl extension and have the basic loop
logic in Tcl.  Well, now I'm learning Ruby.

So, I was thinking of porting this mess to Ruby.  I actually have a
ProcMap class created, which in turn uses a ProcInfo Struct, but
I was thinking of trying out this ProcInfo object as a tiny class
instead.  Doesn't seem like I need all the things provided by
Struct.  So I thought by using a simple class, might save a tiny bit
of overhead.  Though, perhaps that's not necessary true afterall.
Don't know, so thought I'd give it a try.  At least it would be a
learning experience. 

-- 
Amos