dkpskの日記

dkpsk.brain.buffer.flush();

プログラミング言語の基礎概念: 演習問題を解くプログラム(WIP; EvalML5まで)

fetburner.hatenablog.com

hakobe932.hatenablog.com

練習問題の答えを探してる途中でこれらの記事を読んで、EvalML3 の時点で相当やばいことがわかったので、勉強がてら、僕も導出木を生成するプログラムを書くことにした。

github.com

見ての通り、はじめてからすでに1週間くらい経過しているのだけれど、今日ようやく EvalML2 が導出できるようになった。
しかし、ここまではすでに手で解いてあるので、これでようやくスタートライン。

追記(2018/02/09)

ようやくEvalML3の実装を終えた。ここまで2週間。しんどい。
が、出された答えを見る限り、手でやったら解けないなと思った*1ので、苦労した価値はあったのかもしれない。

追記(2018/02/14)

EvalML4の実装を終えた。ここに来て変数の推論規則が変わったので、これ以前の式に対して正しい答えを出せなくなった。 本のほうには、ML3との差分が書いてあるんだけど、この変更については一切触れられていないので、公式サイトにある、推論規則一覧のPDFがなかったら詰んでた。

追記(2018/02/16)

EvalML5の実装を終えた。

*1:僕には、ね