Writing a Compiler - Language Design compiler language Things we want Simplicity Performance Interoperability Language Safety Things we want to avoid Null Pointers

Variables must be initialized at declaration. The language does not define a Null type or value.

= and ==

Similar looking operators can be hard to spot and cause unintended behavior. One way to fix this would be by changing the grammar, so the = operator can only be used in Statements and not in Expressions.

Dangling else Case without break