email github twitter twitter

The Blog of Dean Nasseri

Introducing Fir, the Friendly, Interactive Ruby REPL

Posted on January 23rd, 2018

I haven’t been posting here much because most of my free time has been spent working on a ruby REPL that I call Fir, which stands for friendly-interactive-ruby. The ruby community has no shortage of great REPL’s — the default irb is pretty good, and pry offers a fantastic repl as well as an interactive debugger that really highlights some of the great features of the ruby language. In my daily work, I also really enjoy some of the autosuggestion features that the fish-shell offers, so much so that I got to thinking about integrating those features into a ruby repl. If your not familiar with the fish shell, this is what some of those features look like in action:

The fish shell in action.

The Structure and Interpretation of Ruby Programs

Posted on August 16th, 2017

Whenever a ruby program is run, the program is first lexed into tokens, then the tokens are assembled into an abstract syntax tree, and finally the AST is compiled into virtual machine instructions. In this post, we will explore each of these steps in detail.

Tokenization, parsing, and compiling.