Arantium Maestum

プログラミング、囲碁、読書の話題

継続

型の違うCPS表現への変換

前回に続いてCPS変換の話。 前回はパーサから帰ってくるExp.t型のASTを同じExp.t型のCPS形式になっているASTに変換してからインタプリタに実行させていた。 インタプリタが(特にビルトイン関数について)関数の最終引数を継続だと認識するようになったので…

CPS変換はじめてみた

インタプリタ自作によってプログラミング言語の諸概念を学んでいく「Essentials of Programming Languages」の第5章、第6章はどちらも継続渡しスタイルについて語っている。 第5章は「インタプリタを継続渡しスタイルで書くとどうなるか」という話を掘り下げ…

Monadic Reflectionについて

kontlang作成の一つの目標は、この資料を元に: モナドをつくろう from dico_leque www.slideshare.net モナドをつくれるようにしてみたい、というものだった。 結果的にMaybe、ListやStateモナドを「つくって」みたのだが。 そもそもこのつくったものは本当…