Common Lisp | 14:16 | Final Shift for Call/cc: Direct Implementation of Shift and Resetをちょびちょび読んでいたんですが、Benchmarksのところでreifyとreflectという何やら謎のオペレータが登場。これってどこかで見たなと思ったら、Scalaの限定継続の論文に出てきたやつでした。限定継続を使えばこのreifyとreflectというオペレータが実装できるらしく、モナドを使ったプログラミングが可能になるらしい。試しにCommon Lispのcl-contでreifyとreflectを作ってMonadicなプログラミングに挑戦してみました。 reify/reflectまずpackageを作ります。 (ql:quickload :cl-cont) (ql:quickload :alexandria)