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. Variables
  6. Classes & Object Oriented Programming
  7. TypedData Objects
  8. Exceptions & Error Handling
  9. Circular Buffer Project
  10. Benchmarking
  11. Debugging
  12. (WIP) Writing Gems with C Code
  13. (WIP) Closing notes