be efficient with resources Designed to run bare metal Includes: A compiler, runtime & familiar REPL Support for basic libraries Extra modules to control hardware
amount of RAM? Interned strings, most already in ROM Small integers stuffed in a pointer to avoid using heap (trick from lisp) Optimised method calls to not use heap Garbage collection
If, while, for and try statements Defining functions & classes Local variables Assigning global variables for the first time Small integer arithmetic Creating data structures Inplace operations on existing data structures Calling functions/ methods with positional or keyword args