4.3BSD/usr/contrib/icon/man/cat3/iscope.3

Compare this file to the similar file:
Show the results in this format:




ISCOPE(3.icon)        Icon Program Library         ISCOPE(3.icon)



NNNNAAAAMMMMEEEE
     Descr, Indir, Word1, Word2, Symbol, Efp, Gfp, Pfp - examine
     Icon internals

DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
     These functions deal with Icon internals, producing values
     that exist in memory and registers as Icon is executing.
     Internal values are represented as Icon integers. A
     knowledge of the implementation of Icon is needed to use
     these functions properly.

SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
     DDDDeeeessssccccrrrr((((iiii,,,,jjjj))))
               compose a descriptor whose first word is iiii and
               whose second word is jjjj.

     IIIInnnnddddiiiirrrr((((iiii))))  return an integer corresponding to the value where
               the descriptor at iiii points.

     WWWWoooorrrrdddd1111((((xxxx,,,,iiii))))
               return Icon integer whose value is the first word
               of the descriptor xxxx. If iiii is zero, xxxx is derefer-
               enced; otherwise it is not. An omitted value of iiii
               defaults to 0.

     WWWWoooorrrrdddd2222((((xxxx,,,,iiii))))
               like WWWWoooorrrrdddd1111, except that the value is for the
               second word of the descriptor xxxx.

     SSSSyyyymmmmbbbboooollll((((ssss)))) returns the address of the symbol ssss. The allowable
               values of ssss are:

                    globals   address of the global vector
                    eeeegggglllloooobbbbaaaallllssss  address of the end of the global vector
                    ggggnnnnaaaammmmeeeessss    address of the global name vector
                    ssssttttrrrriiiinnnnggggssss   beginning of the string region
                    ssssffffrrrreeeeeeee     string region free pointer
                    hhhhppppbbbbaaaasssseeee    beginning of the heap region
                    hhhhppppffffrrrreeeeeeee    heap region free pointer
                    ssssttttaaaacccckkkkssss    beginning of the co-expression stack region
                    eeeessssffffrrrreeeeeeee    co-expression stack region free pointer

               SSSSyyyymmmmbbbboooollll((((ssss)))) fails if ssss is not one of these strings.

     EEEEffffpppp(((())))     return the address of the expression frame pointer

     GGGGffffpppp(((())))     return the address of the generator frame pointer

     PPPPffffpppp(((())))     return the address of the frame pointer

CCCCAAAAVVVVEEEEAAAATTTTSSSS
     _I_s_c_o_p_e is inherently dangerous. For example, the composition



Version 5.9    The University of Arizona - 8/17/84              1






ISCOPE(3.icon)        Icon Program Library         ISCOPE(3.icon)



     of an arbitrary descriptor using DDDDeeeessssccccrrrr may cause the Icon
     system to malfunction in mysterious ways.

     Addresses that are represented by integers are not relocated
     during garbage collection; such addresses generally are
     invalidated by a garbage collection.

RRRREEEEQQQQUUUUIIIIRRRREEEEMMMMEEEENNNNTTTTSSSS
     _I_s_c_o_p_e only works for the VAX-11 implementation of Icon.

SSSSEEEEEEEE AAAALLLLSSSSOOOO
     Griswold, Ralph E., Robert K. McConeghy, and William H.
     Mitchell.  _A _T_o_u_r _T_h_r_o_u_g_h _t_h_e _C _I_m_p_l_e_m_e_n_t_a_t_i_o_n _o_f _I_c_o_n; _V_e_r_-
     _s_i_o_n _5._9, Department of Computer Science, The University of
     Arizona. 1984.

     Griswold, Ralph E. ``A Portable Diagnostic Facility for SNO-
     BOL4'', _S_o_f_t_w_a_r_e--_P_r_a_c_t_i_c_e _a_n_d _E_x_p_e_r_i_e_n_c_e, Vol. 5 (1975),
     pp. 93-105.

     Griswold, Ralph E. ``Linguistic Extension of Abstract
     Machine Modelling to Aid Software Development'', _S_o_f_t_w_a_r_e--
     _P_r_a_c_t_i_c_e _a_n_d _E_x_p_e_r_i_e_n_c_e, Vol. 10 (1980), pp. 1-9.

AAAAUUUUTTTTHHHHOOOORRRRSSSS
     Ralph E. Griswold and William H. Mitchell





























Version 5.9    The University of Arizona - 8/17/84              2