| 13 | | * The '''parser''' produces {{{HsSyn}}} parameterised by [wiki:Commentary/Compiler/RdrNameType {{{RdrName}}}]. To a first approximation, a {{{RdrName}}} is just a string. |
| 14 | | * The '''renamer''' transforms this to {{{HsSyn}}} parameterised by {{{[wiki:Commentary/Compiler/NameType Name]}}}. To a first appoximation, a {{{Name}}} is a string plus a {{{Unique}}} (number) that uniquely identifies it. |
| 15 | | * The '''typechecker''' transforms this further, to {{{HsSyn}}} parameterised by [wiki:Commentary/Compiler/IdType {{{Id}}}]. To a first approximation, an {{{Id}}} is a {{{Name}}} plus a type. |
| | 13 | * The '''parser''' produces {{{HsSyn}}} parameterised by '''[wiki:Commentary/Compiler/RdrNameType !RdrName]'''. To a first approximation, a {{{RdrName}}} is just a string. |
| | 14 | * The '''renamer''' transforms this to {{{HsSyn}}} parameterised by '''[wiki:Commentary/Compiler/NameType Name]'''. To a first appoximation, a {{{Name}}} is a string plus a {{{Unique}}} (number) that uniquely identifies it. |
| | 15 | * The '''typechecker''' transforms this further, to {{{HsSyn}}} parameterised by '''[wiki:Commentary/Compiler/IdType Id]'''. To a first approximation, an {{{Id}}} is a {{{Name}}} plus a type. |