## WHERE Get Information on Program Stack

Section: Inspection Functions

### Usage

Returns information on the current stack. The usage is

       where

The result is a kind of stack trace that indicates the state of the current call stack, and where you are relative to the stack.

### Example

Suppose we have the following chain of functions.

         chain1.m
    function chain1
      a = 32;
      b = a + 5;
      chain2(b)

         chain2.m
    function chain2(d)
      d = d + 5;
      chain3

         chain3.m
    function chain3
      g = 54;
      f = g + 1;
      keyboard

The execution of the `where` command shows the stack trace.

    --> chain1
    [chain3,4]--> where
    In base(base) on line 0
    In simkeys(built in) on line 0
    In Eval(chain1) on line 2
    In chain1(chain1) on line 4
    In chain2(chain2) on line 4
    In chain3(chain3) on line 4
    In Eval(where) on line 2
    In where(built in) on line 0
    [chain3,4]