TODO
----
* [ ] Garbage collector
* [ ] Tail recursion (in C functions too)
* [ ] Fix procedures on infinite data structs