Comment

Comment by upghost

There are multiple ways to accomplish this, but the one that is the most straightforward is to simply make an object mapping of the type you are familiar with via AVL trees[1]. Easy way to get the "this.maze" semantics. You can get global context and local context via "blackboard"[2] semantics.

However quite frankly the most powerful way to do this is not obvious because it doesn't translate well to other languages: meta-interpreters[3].

[1]: https://www.scryer.pl/assoc

[2]: https://www.scryer.pl/iso_ext.html#bb_get/2

[3]: https://youtu.be/nmBkU-l1zyc

parent upghost 1 year ago

Discussion

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton