Love this post by about free variable traversals:
haskell.org/ghc/blog/20190
It’s a beautiful look at abstraction, code reuse, and efficiency <3
Conversation
nice! the approach of the bound library is also not bad
1
FWIW- I've mostly moved to using De Bruijn indices in terms and De Bruijn levels in the semantic domain, only plumbing names through in binders at all for pretty printing. Bound is nice, but paying no cost for name manipulation is better.
3
7
Yeah, this is what I've moved to using in Pikelet. It's pretty useful! Much better than the unbound port (ie. locally nameless) that I was using before.



