I’m very excited to share this!
Sand is a language-level Elixir sandbox. It’s fast and very much experimental. It uses max_heap_size
to limit memory usage, reduction monitoring to limit CPU usage, and AST whitelisting to make sure all code is nice and side-effectless. Atom renaming is used to combat the atom table filling up, and binaries are limited to 64 bytes to make sure nothing is stored off-heap.
The demo can be found here.The code can be found here. I’m very curious to see if you guys can manage to break out of this thing!