$Id$

Stack ::= StackRest
       |  ExitFrame|StackRest

StackRest ::= [EntryFrame]

%%
%% -- features file, line, column, 'PC' are optional
%% -- features data and args are optional
%% -- a frame either contains a 'frame' or a 'vars' feature or neither
%%

EntryFrame ::= entry(kind: Kind
                     thr: thread
                     file: atom
                     line: int
                     column: int
                     'PC': int
                     name: atom
                     data: value
                     args: [value]
                     frame: int
                     vars: v('Y': [atom#value] 'G': [atom#value]))

ExitFrame ::= exit(...)   % like 'entry'

Kind ::= call | cond | handler | 'lock'

