* procedures as first class citizens
* lexical scope
* strongly typed
* single character syntax and operators
* inheritance and poly instantiation as a feature of language configuration but remove from language instantiation
* event orientation via callbacks. many developers don’t like callbacks but they provide the most flexible and clearly identifiable flow control path
* single string format with interpolation