| 13 | | * The '''parser''' produces {{{HsSyn}}} parameterised by [wiki:Commentary/Compiler/RdrName {{{RdrName}}]. To a first approximation, a {{{RdrName}}} is just a string. |
| 14 | | * The '''renamer''' transforms this to {{{HsSyn}}} parameterised by [wiki:Commentary/Compiler/Name {{{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/Id {{{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. |