# Grokking the C code

**URL:** <https://www.ruby-forum.com/t/grokking-the-c-code/119877>\
**Category:** Ruby\
**Created:** [November 11, 2007, 8:04pm UTC](https://www.ruby-forum.com/t/grokking-the-c-code/119877 "2007-11-11T20:04:33Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![stefankroes](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/77aa72/32.png) [@stefankroes](https://www.ruby-forum.com/u/stefankroes)\
**Post date:** [November 11, 2007, 8:04pm UTC](https://www.ruby-forum.com/t/grokking-the-c-code/119877/1 "2007-11-11T20:04:33Z")

</div>

Hello.

Last few days I’ve been spending parts of the evenings digging into  
Ruby’s C code. I’m trying to get a basic idea of how everything works,  
both to learn and to introduce some tweaks in the language (just for  
my personal enjoyment). I’m finding that as a big bite, though. Can  
you guys recommend me how to tackle the whole thing? And is there some  
basic overview of how the code works (for example, how eval.c works  
and what are the frame, tag, iter and so on structs) from which I get  
get the big idea?

---

<div class="post-metadata">

**Author:** ![stefankroes](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/77aa72/32.png) [@stefankroes](https://www.ruby-forum.com/u/stefankroes)\
**Post date:** [November 11, 2007, 8:10pm UTC](https://www.ruby-forum.com/t/grokking-the-c-code/119877/2 "2007-11-11T20:10:59Z")

</div>

On Nov 11, 2007, at 1:03 PM, Stefan K. wrote:

> Last few days I’ve been spending parts of the evenings digging into  
> Ruby’s C code. I’m trying to get a basic idea of how everything works,  
> both to learn and to introduce some tweaks in the language (just for  
> my personal enjoyment). I’m finding that as a big bite, though. Can  
> you guys recommend me how to tackle the whole thing? And is there some  
> basic overview of how the code works (for example, how eval.c works  
> and what are the frame, tag, iter and so on structs) from which I get  
> get the big idea?

Definitely start out with the Ruby Hacking Guide:

[http://rhg.rubyforge.org/](http://rhg.rubyforge.org/)

Only a few chapters have been translated into English so far, but it  
should be more than enough to get you started.

-be

---

<div class="post-metadata">

**Author:** ![stefankroes](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/77aa72/32.png) [@stefankroes](https://www.ruby-forum.com/u/stefankroes)\
**Post date:** [November 11, 2007, 8:32pm UTC](https://www.ruby-forum.com/t/grokking-the-c-code/119877/3 "2007-11-11T20:32:40Z")

</div>

Brad E. wrote:

> > get the big idea?

Thanks for the link!! It makes extremely interesting reading 🙂  
…and very distracting too!

Cheers,  
Mohit.  
11/12/2007 | 3:31 AM.

---

<div class="post-metadata">

**Author:** ![stefankroes](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/77aa72/32.png) [@stefankroes](https://www.ruby-forum.com/u/stefankroes)\
**Post date:** [November 12, 2007, 5:00pm UTC](https://www.ruby-forum.com/t/grokking-the-c-code/119877/4 "2007-11-12T17:00:24Z")

</div>

On Nov 11, 2007 8:03 PM, Stefan K. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> Hello.
> 
> Last few days I’ve been spending parts of the evenings digging into  
> Ruby’s C code. I’m trying to get a basic idea of how everything works,  
> both to learn and to introduce some tweaks in the language (just for  
> my personal enjoyment). I’m finding that as a big bite, though. Can  
> you guys recommend me how to tackle the whole thing? And is there some  
> basic overview of how the code works (for example, how eval.c works  
> and what are the frame, tag, iter and so on structs) from which I get  
> get the big idea?

[http://eigenclass.org/hiki/ruby+internals+guide](http://eigenclass.org/hiki/ruby+internals+guide)
