Going FurtherΒΆ

At this point you likely have a number of further ideas for extension.

Implement them!

For some further inspiration:

  • Loops! Function calls! Methods! More operators. Extend your parser, compiler and interpreter to support these, turning Snap into an actual programming language.
  • Add some more types!
  • We haven’t even mentioned how to add a JIT to your interpreter. The RPython docs cover the basics. Your task will be to inform the RPython toolchain about a number of the fundamentals within your interpreter, such as where your main loop starts, and what the lifecycles of some of your variables and objects are within your interpreter.