v5 Semantics: import/export resolution

Lesson, slides, and applied problem sets.

View Slides

Lesson

v5 Semantics: import/export resolution

New checks

  • module names are unique
  • main exists and is last
  • imports refer to earlier modules
  • import aliases are unique in the module scope
  • exported names exist and are unique
  • member access uses an imported module alias
  • member names must be exported

Member access rules

Given m.add:

  1. m must be a module alias
  2. add must be in that module's exports

This keeps module boundaries explicit and readable.


Module Items