Event Codes and Masks

Evaluation Events

     code        event           value

     E_Fcall   function call         function
     E_Ffail   function failure      -1
     E_Fresum  function resumption   0
     E_Fret    function return       value produced
     E_Fsusp   function suspension   value produced
     E_Frem    function removal      0
     E_Ocall   operator call         operation
     E_Ofail   operator failure      -1
     E_Oresum  operator resumption   0
     E_Oret    operator return       value produced
     E_Osusp   operator suspension   value produced
     E_Orem    operator  removal     0
     E_Pcall   procedure call        procedure
     E_Pfail   procedure failure     procedure
     E_Prem    procedure removal     procedure
     E_Presum  procedure resumption  procedure
     E_Pret    procedure return      value produced
     E_Psusp   procedure suspension  value produced

     mask        events

     FncMask   all function events
     OperMask  all operator events
     ProcMask  all procedure events

Structure Events

     code        event              value

     E_Lbang    list generation          list
     E_Lcreate  list creation            list
     E_Lget     list get or pop          list
     E_Lpull    list pull                list
     E_Lpush    list push                list
     E_Lput     list put                 list
     E_Lrand    list random reference    list
     E_Lsub     list subscript           subscript
     E_Rbang    record generation        record
     E_Rcreate  record creation          record
     E_Rrand    record random reference  record
     E_Rsub     record subscript         subscript
     E_Sbang    set generation           set
     E_Screate  set creation             set
     E_Sdelete  set deletion             set
     E_Sinsert  set insertion            set
     E_Smember  set membership           set
     E_Trand    set random reference     table
     E_Tbang    table generation         table
     E_Tkey     table key generation     table
     E_Tcreate  table creation           table
     E_Tdelete  table deletion           table
     E_Tinsert  table insertion          table
     E_Tmember  table membership         table
     E_Trand    table random reference   table
     E_Tsub     table subscript          subscript

     masks      events

     ListMask   list events
     RecordMask record events
     SetMask    set events
     TableMask  table events
     StructMask all structure events

String Scanning Events

     code         event               value

     E_Sfail    scanning failure         old subject
     E_Snew     environment creation     new subject
     E_Spos     scanning position        position
     E_Sresum   scanning resumption      restored subject
     E_Ssusp    scanning suspension      current subject
     E_Srem     environment removal      old subject

     mask        events

     ScanMask   scanning events

Co-Expression Events

     code    event    value

     E_Coact    co-expression activation  co-expression
     E_Cofail   co-expression failure     co-expression
     E_Coret    co-expression return      co-expression

Variable Usage Events

     code          event                value

     E_Assign   assignment                 variable name
     E_Value    assignment value           value assigned
     E_Deref    dereferencing of variable  variable name
     E_Ssasgn   assignment to substring    length of result

     mask          events

     AssignMask E_Assign and E_Value
count-tabulate

which identifies the local identifier count in the procedure tabulate

s1[i:j] := s2

which is equivalent to

s1 := s1[1:i] || s2 || s1[j:0]

(assuming i and j are positive and in nondecreasing order)

Type Conversion Events

     code           event            value

     E_Aconv    conversion attempt     input value
     E_Fconv    conversion failure     input value
     E_Nconv    conversion not needed  input value
     E_Sconv    conversion success     output value

     mask           events

     ConvMask   all conversion events

Allocation Events

     code           event                    value

     E_BlkDeAlc  block deallocation           bytes deallocated
     E_Coexpr    co-expression allocation     bytes allocated
     E_Cset      cset allocation              bytes allocated
     E_File      file allocation              bytes allocated
     E_Lelem     list element allocation      bytes allocated
     E_List      list allocation              bytes allocated
     E_Lrgint    large integer allocation     bytes allocated
     E_Real      real allocation              bytes allocated
     E_Record    record allocation            bytes allocated
     E_Refresh   refresh allocation           bytes allocated
     E_Selem     set element allocation       bytes allocated
     E_Set       set allocation               bytes allocated
     E_Slots     hash header allocation       bytes allocated
     E_StrDeAlc  string deallocation          bytes deallocated
     E_String    string allocation            bytes allocated
     E_Table     table allocation             bytes allocated
     E_Telem     table element allocation     bytes allocated
     E_Tvsubs    substring tv allocation      bytes allocated
     E_Tvtbl     table-element tv allocation  bytes allocated

     mask          events

     AllocMask   allocation events except deallocation ones

Garbage Collection Events

     code             event                 value

     E_Collect      begin garbage collection    region number
     E_EndCollect   end of garbage collection   null value
     E_TenureBlock  tenure block region         size
     E_Tenure       tenure string region        size

Interpreter Evaluation Stack Events

     name          event               value

     E_Intcall   call of interpreter     interpreter signal
     E_Intret    return of interpreter   interpreter signal
     E_Stack     stack depth change      stack depth

Other Events

     name          event             value

     E_Loc      location change       line/col. #s
     E_MXevent  event in MP window    window event
     E_Opcode   virtual-machine op.   operation code
     E_Tick     clock tick            number of ticks
     E_Error    run-time error        error number
     E_Exit     program exit          exit code