cvec ← {maxcols←⎕pw} ##.tree space ⍝ Display of namespace tree. NB: this functionality is provided by the user command: ]map. The resulting character vector represents the structure of all objects in the argument space. The optional left argument (default ⎕PW), determines the maximum number of columns for the result. Within sub-spaces, objects of each name-class are collected and prefixed with type code: ~ variables ∇ functions ∘ operators Namespaces of special type (Forms, Menus, etc.) are explicitly annotated. Technical notes: In order to avoid name clashes with definitions local to tree itself, auxiliary operand function exec←{⍺⍎⍵} is installed _outside_ the main body of code. When ⎕NL and ⍎ are called via [exec], local names inside tree are invisible. This is one of the benefits of lexical as opposed to dynamic scope rules. Given that any space may contain a ref to any other space, the structure is more properly termed a _graph_ than a _tree_. Tree pursues only the immediate child- ren of each space. Otherwise, _remote_ references appear as: ref → full_name. Notice that refs "hidden" within array variables are invisible to this version of [tree]. Examples: 80 tree # # · ∇ ambiv ascfile attrib cmat cmpx day det dice disp display dot factorial · ∇ factors fibonacci find fndiff fnrefs gcd justify kt lcase life mean mtrim · ∇ osc pack pmat queens refs root roots setwx sieve squeeze ss ssmat ssword · ∇ stamps subs tfmt timestamp tnest to tokens tokens2 tree tview type ucase · ∇ unwrap up vtrim words wrap wsdiff xtabs · ∘ bsearch else file limit perv pow saw traj until · notes · · ~ ambiv ascfile attrib bsearch cmat cmpx contents day det dice disp · · ~ display else factorial factors fibonacci file find fndiff fnrefs gcd · · ~ justify kt lcase life limit mean mtrim osc pack perv pmat pow queens · · ~ refs root roots saw setwx sieve squeeze ss ssmat ssword stamps subs · · ~ tfmt timestamp tnest to tokens tokens2 traj tree tview type ucase · · ~ until unwrap up vtrim words wrap wsdiff xtabs Line_vectors Namespaces · · ~ Trees Workspaces tree ⎕SE.cbbot.bandsb1 ⍝ Sub-tree of session space. ⎕SE.cbbot.bandsb1 [CoolBand] · sb [StatusBar] · · caps [StatusField] · · hint [StatusField] · · ins [StatusField] · · · ∇ KEY_TOGGLE · · mm [StatusField] · · mode [StatusField] · · · ∇ KEY_TOGGLE · · num [StatusField] · · pause [StatusField] tree x ⍝ Spaces containing 'remote' refs. #.x · ref → #.x · y · · ref → #.x.z · z · · ref → #.x.y See also: refs Namespaces PF_keys cols Back to: contents Back to: Workspaces