Blog Retrospective #3


This is a summary of posts since the last blog retrospective, which I wrote in April.

Table of Contents

1. Popular Posts

The explicitly educational posts have been the most popular ones.

In these two posts, I describe a concrete problem, a solution that I've used, and discuss lessons for the Oil language:

The next two posts criticize two aspects of the shell language, and suggest alternatives:

What is the relationship between the Shunting Yard Algorithm and Pratt Parsing?

2. Thoughts on Language Design and Implementation

A collection of observations on Unix language design:

The following three posts describe a plan for making Oil fast, small, and self-contained, without rewriting the whole thing. Although I haven't worked in this area for a few months, I still believe in this plan.

I describe how tests will help me cut Oil's dependency on the Python interpreter:

3. Release Announcements

I made the first three releases!

4. Status Updates

Project planning:

Other Status Updates:

5. Other Posts

6. Topics I Skipped

As a reminder to myself, here are topics I skipped:

(1) Much of the shell runtime. I abridged the long slog through the shell.

(2) The R language.

If you're not familiar with R, consider that it passes the Perlis test:

A language that doesn’t affect the way you think about programming, is not worth knowing.

I also want to address the fact that the performance analysis I do often requires four Turing-complete languages: Python, R, JavaScript, and shell. This is similar to the problem with shell, awk, and make.

Leave a comment if you're interested in any of these topics.


In this post, I organized posts from the last 7 months into 5 topics, and I made note of 2 more topics to address.

A few months ago, I also added tags to the blog index, which may help you find posts to read. For example, here are posts about #parsing.