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


Ignore:
Timestamp:
Sep 12, 2006 1:52:33 PM (8 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.