1. 17

  2. 6

    I really like this approach to building compilers - I used the nanopass framework for a compiler I wrote for my undergrad thesis: https://github.com/charles-l/comp

    It’s not perfect. There are still a few limitations that can only be circumvented with some messy mutation, but most transformations can be performed quite elegantly with the nanopass DSL.

    1. 7

      One of the framework’s authors gave a nice talk at Clojure/conj a few years back.