A Rubyist's Walk Along the C-side

You can find the accompanying source code in the GitHub repository peterzhu2118/ruby-c-ext-code

I’m excited to be starting a series on writing Ruby C extensions! In this series, you’ll learn how to build your very own Ruby C extension from scratch and re-learning all the Ruby features, but from the C-side. This series will assume you are familiar with Ruby, and have a basic understanding of C. If you don’t, there are plenty of great resources online to learn them.

Table of Contents

The entries marked with WIP (work in progress) are planned and subject to change.

  1. Hello World!
  2. Defining Methods
  3. Calling Methods
  4. Primitive Data Types
  5. (WIP) Variables
  6. (WIP) Classes & Object Oriented Programming
  7. (WIP) TypedData Classes
  8. (WIP) Exceptions
  9. (WIP) Benchmarking
  10. (WIP) Debugging
  11. (WIP) Writing Gems with C Code
  12. (WIP) Closing notes