On Jul 3, 2008, at 8:48 AM, Tristin Davis wrote: > I've been going over the Ruby API and I have a couple questions. > > Why are the variables defined outside the block? What effect does > this have > on the variables? they are not "outside" the block, it's just a way to define the type of the variables in the function's signature. This: > static VALUE > fsdbm_s_open(argc, argv, klass) > int argc; > VALUE *argv; > VALUE klass; > { is the same as this: static VALUE fsdbm_s_open(int argc, VALUE *argv, VALUE klass) { > I've always defined my variables inside a block. now, I'm not sure you can do it that way... > static VALUE fsdbm_s_open(argc,argv,self) { > int argc; > VALUE *argv; > VALUE self > /* Etc */ > } regards, -- Rolando Abarca M.