I love it when I discover a connection between things that helps me understand *both* of them better.
Today's is that de Bruijn indexes ≈ relative pointers and de Bruijn levels ≈ absolute (that is, normal) pointers. (By way of variable names ≈ memory addresses.)
Conversation
Ooooh! I love this! I might use this handy portal some day!
1
1
Seriously, cool conceptual portals make my day all the time. Like how natural deduction rules are kind of like upside down prolog clauses with custom notation… super handy hack for explaining CS meta-notation to your logic programmer colleagues (doesn't everyone have those?)
1
1
Hmm... in my case I think I might get more mileage out of that one in the reverse direction :) (completely missed out on Prolog)
1
1
I'm the same! Certainly helps me out - most of our code is in Mercury.
2
1
...what are you writing in it?
1
princexml.com - it's a browser engine… for PDFs!
1
1
Most of my work atm is laying the groundwork for de-C-ifying the bottom of the stack though, with Rust. But I need to understand the Mercury code and be able to understand the discussions.

