How?

Hi friends,

I am a new ruby programmer. I have a question for all of you,

class ABC

end

As I read that Ruby is made in C. I checked the file class.c

There one structure is defined as RClass

struct RClass
{
struct RBasic basic;
struct st_table *iv_tbl
struct st_table *m_tbl;
Value super
}

when we defined a class in Ruby how does the things happen at
fundamental level.

???
how ABC is a class in RUBY?

I suggest you go the the Pragmatic Programmer’s bookshelf and get the
Pickaxe book, Programming
Rubyhttp://pragprog.com/titles/ruby/programming-ruby.
This is a very good book, very readable. You will enjoy it.

2009/7/28 Hunt H. [email protected]

There one structure is defined as RClass
when we defined a class in Ruby how does the things happen at
fundamental level.

???
how ABC is a class in RUBY?

Posted via http://www.ruby-forum.com/.


Regards,

Ken

Seek wisdom through disbelief

On Tue, 28 Jul 2009 18:02:56 +0900, Hunt H. [email protected]
wrote:

There one structure is defined as RClass
when we defined a class in Ruby how does the things happen at
fundamental level.

???
how ABC is a class in RUBY?

Because you defined it as a class when you said:
def ABC
end

Why does it matter how it is turned into a class in C? It has been
defined
as a class, by you, in Ruby and thus is a class.

On Jul 28, 10:38 am, Kyle S. [email protected] wrote:

when we defined a class in Ruby how does the things happen at
as a class, by you, in Ruby and thus is a class.

  • Kyle

Eigenclass has a guide outline for teaching yourself the “basics” of
Ruby at eigenclass.org. Also just
googling today I found this presentation
http://mtnwestrubyconf2008.confreaks.com/11farley.html
from MontainWest Ruby last year, which really makes Ruby’s internal
handling of class hierarchies and method dispatching clear.

Hunt H. wrote:

when we defined a class in Ruby how does the things happen at
fundamental level.

There’s some stuff on interfacing Ruby internals with C at
http://www.ruby-doc.org/docs/ProgrammingRuby/html/ext_ruby.html

An object reference is a VALUE. Most people don’t have to worry about
how a Class might be different from any other type of Object internally.
If you do, the source code is all there… it’s probably just not the
right place to start :slight_smile: