|
|
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:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.