Annotation of 43BSD/ucb/lisp/lisplib/fcninfo.l, revision 1.1

1.1     ! root        1: (setq rcs-fcninfo- "$Header: fcninfo.l,v 1.2 84/01/29 23:39:00 layer Exp $")
        !             2: 
        !             3: ;;
        !             4: ;; fcninfo.l                           -[Sun Jan 29 23:38:10 1984 by layer]-
        !             5: ;;
        !             6: ;; This is normally not loaded into a lisp system but is loaded into
        !             7: ;; the compiler.  
        !             8: ;; number of arguments information for C coded functions
        !             9: ;; not included: evalframe evalhook wait exece
        !            10: ;; stopped in sysat.c after *invmod
        !            11: ;
        !            12: ;; the information is stored in such as way as to minimize the
        !            13: ;; amount of space required to store the informaion.
        !            14: 
        !            15: 
        !            16: (eval-when (compile eval)
        !            17:    (setq cdescrip " defined in C-coded kernel"))
        !            18: 
        !            19: (defmacro decl-fcn-info (tag fcns)
        !            20:    `(let ((fcninfo ',tag))
        !            21:        ,@(mapcar '(lambda (fcn) `(putprop ',fcn fcninfo 'fcn-info)) fcns)))
        !            22: (defmacro zero (&rest args)
        !            23:    `(decl-fcn-info ((0 . 0) ,cdescrip) ,args)) 
        !            24: (defmacro zero-to-one (&rest args)
        !            25:    `(decl-fcn-info ((0 . 1) ,cdescrip) ,args))
        !            26: (defmacro zero-to-two (&rest args)
        !            27:    `(decl-fcn-info ((0 . 2) ,cdescrip) ,args))
        !            28: (defmacro zero-to-inf (&rest args)
        !            29:    `(decl-fcn-info (nil ,cdescrip) ,args))
        !            30: (defmacro one (&rest args)
        !            31:    `(decl-fcn-info ((1 . 1) ,cdescrip) ,args))
        !            32: (defmacro one-to-two (&rest args)
        !            33:    `(decl-fcn-info ((1 . 2) ,cdescrip) ,args))
        !            34: (defmacro one-to-three (&rest args)
        !            35:    `(decl-fcn-info ((1 . 3) ,cdescrip) ,args))
        !            36: (defmacro one-to-inf (&rest args)
        !            37:    `(decl-fcn-info ((1 . nil) ,cdescrip) ,args))
        !            38: (defmacro two (&rest args)
        !            39:    `(decl-fcn-info ((2 . 2) ,cdescrip) ,args))
        !            40: (defmacro two-to-inf (&rest args)
        !            41:    `(decl-fcn-info ((1 . nil) ,cdescrip) ,args))
        !            42: (defmacro three (&rest args)
        !            43:    `(decl-fcn-info ((3 . 3) ,cdescrip) ,args))
        !            44: (defmacro three-to-five (&rest args)
        !            45:    `(decl-fcn-info ((3 . 5) ,cdescrip) ,args))
        !            46: (defmacro three-to-inf (&rest args)
        !            47:    `(decl-fcn-info ((3 . nil) ,cdescrip) ,args))
        !            48: (defmacro four (&rest args)
        !            49:    `(decl-fcn-info ((4 . 4) ,cdescrip) ,args))
        !            50: (defmacro five (&rest args)
        !            51:    `(decl-fcn-info ((5 . 5) ,cdescrip) ,args))
        !            52: 
        !            53: 
        !            54: (zero baktrace fork oblist ptime reset resetio zapline)
        !            55: (zero-to-one arg close drain dumplisp exit
        !            56:    gensym monitor nwritn random return terpr time-string tyipeek)
        !            57: (zero-to-two err ratom read readc tyi)
        !            58: (zero-to-inf + - * / and concat cond
        !            59:    difference greaterp lessp list or plus product prog quotient setq
        !            60:    sum times unconcat)
        !            61: (one  1+ 1- absval add1
        !            62:    aexplode aexplodec aexploden argv
        !            63:    arrayp ascii asin acos atom bcdp
        !            64:    bignum-to-list boundp car cdr chdir cos
        !            65:    dtpr exp fact fake fix float frexp function get_pname getaccess getaux
        !            66:    getd getdata getdelta
        !            67:    getentry getenv getdisc getlength go haulong infile log 
        !            68:    implode intern maknam maknum makunbound minus minusp
        !            69:    not ncons null numberp onep plist pntlen portp ptr 
        !            70:    quote readlist remob *rset sin sizeof stringp sub1 sqrt symbolp
        !            71:    truename type valuep zerop)
        !            72: (one-to-two errset flatc outfile patom print status tyo untyi)
        !            73: (one-to-three fasl load process)
        !            74: (one-to-inf funcall progv)
        !            75: (two  allocate alphalessp
        !            76:    arrayref assq atan bignum-leftshift *catch cons
        !            77:    Divide eq equal freturn
        !            78:    get haipart *invmod lsh
        !            79:    mfunction mod *mod nthelem putaux putd
        !            80:    putdata putdelta putdisc putlength
        !            81:    remprop replace rot rplaca rplacd segment set setarg setplist scons
        !            82:    signal sstatus sticky-bignum-leftshift *throw
        !            83:    vref vrefi-byte vrefi-word vrefi-long)
        !            84:    
        !            85: (two-to-inf  apply def mapc mapcan mapcar mapcon maplist prog2)
        !            86: (three putprop)
        !            87: (three-to-five cfasl)
        !            88: (three-to-inf boole)
        !            89: (four Emuldiv)
        !            90: (five marray)
        !            91: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.