この記事はN高等学校 Advent Calendar 2018の10日目の記事です。 この記事はN高等学校をそろそろ卒業してしまう人が言語処理系を書きたいと言っている後輩に向けて書いたものです。内容は言語処理系を書きたい万人向けのものですが、想定するレベル感はそれぐらいだと思ってもらえれば幸いです。 作ると言っても実際には実装日記みたいな感じですが、ソースコードと合わせて見ればどのようなことを考えて言語処理系を実装しているかを感じ取れるんじゃないかと思っています。 この記事について この記事では簡単な言語処理系を作りたいと思います。どのような言語かというと、 1 + 1のような簡単な四則演算ができる 関数の定義、呼び出しができる if式がある 値は64bit整数のみ 言ってしまえば簡易的な電卓言語みたいなものです。これを作るだけでも言語処理系作りの練習になりますが、これだけでは面白みに欠け