Changes between Version 8 and Version 9 of Commentary/Compiler/NameType


Ignore:
Timestamp:
Sep 12, 2006 1:52:33 PM (9 years ago)
Author:
simonpj
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Commentary/Compiler/NameType

    v8 v9  
    5959
    6060  {{{WiredIn}}}::
    61     A {{{WiredIn}}} {{{Name}}} is a special sort of {{{External}}} {{{Name}}}, one that is completely known to the compiler (e.g. the {{{Bool}}} type constructor).  See [wiki:Commentary/Compiler/WiredIn#Wiredinthing].
     61    A {{{WiredIn}}} {{{Name}}} is a special sort of {{{External}}} {{{Name}}}, one that is completely known to the compiler (e.g. the {{{Bool}}} type constructor).  See [wiki:Commentary/Compiler/WiredIn].
    6262
    6363  The {{{BuiltInSyntax}}} field is just a boolean yes/no flag that identifies entities that are denoted by built-in syntax, such as {{{[]}}} for the empty list.  These {{{Names}}} aren't "in scope" as such, and we occasionally need to know that.
     
    6767Here are the sorts of Name an entity can have:
    6868
    69  * Class, !TyCon: Always have {{{External}}} or {{{WiredIn}}} Names.
     69 * Class: always has an {{{External}}} Names.
     70
     71 * TyCon: always has an {{{External}}} or {{{WiredIn}}} Name.
    7072
    7173 * !TyVar: can have {{{Internal}}}, or {{{System}}} Names; the former are ones arise from instantiating programmer-written type signatures.