summaryrefslogtreecommitdiff
path: root/import-export/README
blob: 4bd3bc47073d9370cde58994c97f3a6a683c9898 (about) (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
This is the import / export phase.  This process is accomplished as follows:

a) Local definitions are created in each module.  These are entered into the
   local symbol table.
b) Imports to non-local modules are completely resolved.
c) Local import/export is performed via a fixpoint:
    1) Export: definitions added in the previous round are filtered by the
       export list and placed in a fresh export list.
    2) Each module imports from the fresh export list of the other modules.
       Any import not already present is placed on a new fresh export list.
   When no fresh exports are generated, the iteration is complete.
d) Missing exports and imports are checked for.