|
|
1.1 ! root 1: Fri Jan 13 15:05:29 1984 by jkf ! 2: the 68k version will now record function argument ! 3: counts for lambdas. It still doesn't do lexprs (even those ! 4: with &optional and &rest forms). ! 5: ! 6: Wed Dec 7 16:13:08 1983 by sklower ! 7: changed profiling code to refer to mcnts instead of ! 8: mcounts so that the C variable could be so renamed ! 9: to make sure that all names are distinguishable ! 10: in the first 6 characters. This change is invisible ! 11: to users. ! 12: ! 13: Tue Nov 22 08:59:34 1983 by jkf ! 14: added the -W switch. After compilation (but before assembly) ! 15: it aborts the compilation with an error status if there were ! 16: any warnings. ! 17: (now: version 8.39) ! 18: ! 19: Tue Oct 25 14:45:48 1983 by jkf ! 20: fixed it so that if a lisp error occurs when compiling a function, ! 21: the name of the function being compiled will be printed ! 22: (now: version 8.38) ! 23: ! 24: Mon Oct 10 07:42:54 1983 by jkf ! 25: fixed bug in liszt (tlev) ! 26: (now: version 8.37) ! 27: ! 28: Sat Jul 30 15:37:40 1983 by layer ! 29: open code vset. Move all vector stuff to vector.l. ! 30: Files: func.l, decl.l, vector.l, and cmake.l ! 31: (now: version 8.33) ! 32: ! 33: Mon Jul 25 21:29:54 PDT 1983 by layer ! 34: fixed 'liszt' to mung object file header for the sun ! 35: File: tlev.l ! 36: (now: version 8.32) ! 37: ! 38: Mon Jul 25 07:05:49 1983 by jkf ! 39: fix bug whereby -mr would cause an 'comma not in backquote error' ! 40: because the escape character was / instead of \ when reading ! 41: /usr/lib/lisp/autorun.xxx ! 42: (now: version 8.31) ! 43: ! 44: Sat Jun 25 13:28:10 1983 by jkf ! 45: Turn off uctolc converstion before printing bindtab. ! 46: This is useful for liszt in opus 38.65 and greater since it ! 47: will eliminate unnecessary |'s in the bindtab if uctolc ! 48: is need to compile the file ! 49: (now: version 8.29) ! 50: ! 51: Thu Jun 16 21:52:59 1983 by jkf ! 52: fixed compilation of &aux for vax version. Now &aux (foo foo) ! 53: will work if foo is special. ! 54: (now: version 8.28) ! 55: ! 56: Wed May 4 18:32:46 1983 by layer ! 57: added sun autorun header to io.l ! 58: (now: version 8.27) ! 59: ! 60: Thu Mar 24 08:24:53 1983 by jkf ! 61: -x file will now be placed in the same place as the output ! 62: file (instead of the input file). ! 63: (now: version 8.25) ! 64: ! 65: Sat Mar 19 17:49:18 1983 by jkf ! 66: mixed in the 68k liszt source. ! 67: (now: version 8.24) ! 68: ! 69: Mon Mar 14 13:14:26 1983 by jkf ! 70: liszt used to open code 'times' if all operands were fixnums. ! 71: Thus (times 256 256 256 256) would open code to a 0 fixnum. ! 72: This is clearly wrong and liszt will now not convert times, add, ! 73: etc to their fixnum equivalents. If you want fixnum semantics ! 74: then you must use fixnums. ! 75: Another bug was fixed: d-functyp would return the wrong thing ! 76: give a name bound to a foreign function. now it returns 'lambda. ! 77: files affected: datab.l decl.l ! 78: (now: version 8.23) ! 79: ! 80: Tue Feb 22 08:43:44 1983 by jkf ! 81: force jump to vecindexerr to use 'jmp', since the object ! 82: file might be large and the assembler is stupid ! 83: (now: version 8.22) ! 84: ! 85: Thu Feb 10 20:39:42 1983 by jkf ! 86: open coded vectorp and vectorip, vsize-... ! 87: (now: version 8.21) ! 88: ! 89: Thu Jan 20 01:57:01 1983 by layer ! 90: Added three features to liszt command line processing: ! 91: -e <expr> evaluates <expr> before compilation. ! 92: -i <filename> loads <filename> before compilation. ! 93: -S -o filename names .s file. ! 94: file: tlev.l ! 95: (now: version 8.20) ! 96: ! 97: Mon Jan 17 09:41:12 1983 by jkf ! 98: added arg number checking and open coded &keywords. ! 99: (now: version 8.19) ! 100: ! 101: Sun Jan 16 10:05:01 1983 by jkf ! 102: fixed nasty bug in d-exp which would show up if a macro ! 103: returned a recursive call it itself ! 104: (now: version 8.18) ! 105: ! 106: Wed Jan 12 10:43:53 1983 by jkf ! 107: added open coding of vref functions ! 108: (now: version 8.17) ! 109: ! 110: Wed Oct 27 20:24:47 1982 by jkf ! 111: removed references to sys_ functions, replaced them with ! 112: sys: functions so code will be more portable. ! 113: file: tlev.l ! 114: ! 115: Wed Oct 27 08:15:14 1982 by jkf ! 116: discovered that making 'declare' a function is a bad idea because ! 117: if the compiler executes an interpreted function with local ! 118: declarations, those local declarations will seem like declarations ! 119: for the function begin compiled. Thus declare is no longer a ! 120: special function in the compiler: it must be seen by the compiler ! 121: to have an effect. Added the user callable function liszt-declare ! 122: which will have an effect just like declare used to: the compiler ! 123: will recognize it when compiling and it can be evaluated by a ! 124: user function. ! 125: (now: version 8.16) ! 126: ! 127: Mon Oct 25 22:55:37 1982 by jkf ! 128: removed If macro definition from cmacros.l . It is now in ! 129: the default franz. ! 130: ! 131: Mon Oct 25 09:15:18 1982 by jkf ! 132: catch the sigterm signal and die after removing the /tmp file. ! 133: (now: version 8.15) ! 134: ! 135: Tue Oct 19 15:56:07 1982 by jkf ! 136: fixed bugin cc-arg wherein a (arg (foo)) would be compiled ! 137: incorrectly (it was calling zerop on a non number). ! 138: Added checks for cmacro and macro-autoload properties. ! 139: When doing macro expansion, had it stop if the same car ! 140: was returned. ! 141: (now: version 8.14) ! 142: ! 143: Mon Oct 18 23:27:14 1982 by layer ! 144: Fixed bug in function cc-quote. Parens in an If statement ! 145: were messed up. ! 146: ! 147: Sat Oct 9 04:35:23 PDT 1982 by layer ! 148: Np-reg, Lbot-reg, oLbot-reg are now constants. Changes ! 149: made to expr.l and io.l. ! 150: ! 151: Thu Oct 7 01:02:26 1982 by jkf ! 152: fixed bug in the compiler. The compiler had neglected to enforce ! 153: the rule that 'macros' not be defined as local functions. ! 154: Now that is checked (modification to tlev.l). ! 155: ! 156: Wed Oct 6 22:53:36 1982 by jkf ! 157: added check to make sure that a file doesn't declare a function ! 158: to be local that has already had a compiled call made to it. ! 159: This is done by placing a t under indicator g-stdref for all ! 160: symbols called in the 'standard' way. ! 161: (now: version 8.13) ! 162: ! 163: Wed Oct 6 13:29:27 PDT 1982 by layer ! 164: put the loading of chead.l (in array.l datab.l decl.l expr.l ! 165: fixnum.l funa.l funb.l func.l io.l tlev.l util.l) under ! 166: include-if control. Also changed chead.l. ! 167: ! 168: Tue Oct 5 23:36:09 PDT 1982 by layer ! 169: removed function d-call from expr.l, since it isn't ! 170: used anymore. ! 171: ! 172: Tue Oct 5 23:00:09 PDT 1982 by layer ! 173: added sccs'ed file scmake.l, so that an all interp'd ! 174: version of the compiler can be made without deleting ! 175: all the .o files. Changes were also make to the Makefile. ! 176: snliszt (formerly slownliszt) now depends on source ! 177: files (like nliszt depends on .o files). ! 178: ! 179: Tue Oct 5 22:22:59 1982 by jkf ! 180: added argument checking. This involved mods to expr.l to ! 181: do the checking and to tlev.l to save argument number ! 182: info while compiling. The file /usr/lib/lisp/fcninfo.l ! 183: contains a description of what is known about C functions. ! 184: (now: version 8.12) ! 185: ! 186: Mon Oct 4 14:23:29 1982 by jkf ! 187: turn off [load ...] message when loading in lisztrc file ! 188: ! 189: Tue Sep 28 09:30:36 1982 by jkf ! 190: change tmp file name back to jkfnnnnn ! 191: (now: version 8.11) ! 192: ! 193: Wed Jul 21 13:43:56 PDT 1982 by layer ! 194: function "liszt" in tlev.l now returns the true assembler exit ! 195: status (if the compile goes that far). ! 196: ! 197: Sat Jul 3 18:01:25 1982 by jkf ! 198: open code getaux and getaccess ! 199: (now: version 8.10) ! 200: ! 201: Wed Jun 30 18:58:32 1982 by jkf ! 202: look for liszt rc files without extensions. now we look in ! 203: 12 places for the lisp init file: ! 204: { . , $HOME } { .lisztrc , lisztrc } { .o , .l , } ! 205: (now: version 8.09) ! 206: ! 207: Thu May 27 08:19:00 1982 by jkf ! 208: fixed bug in d-fixnump which caused liszt to assume too often that ! 209: arguments are all fixnums ! 210: (now: version 8.08) ! 211: ! 212: Wed May 12 13:46:03 1982 by jkf ! 213: new declaration scheme died when the object being declared ! 214: was a list. e.g (declare (fixnum (foo fixnum flonum)). ! 215: Fixed declare-handler so that cases like this are ignored. ! 216: (now: version 8.07) ! 217: ! 218: Fri May 7 19:28:04 1982 by jkf ! 219: allow (function (nlambda ()...)) and (function (lambda () ..)) ! 220: (now: version 8.06) ! 221: ! 222: Thu May 6 15:03:50 1982 by jkf ! 223: support local declarations. They are stacked on g-decls. ! 224: localf and macarray don't fit in too well, they should ! 225: be fixed. ! 226: fixnum declarations now have meaning. They will allow the ! 227: compiler to convert from functions like 'add1' to 1+. ! 228: 'declare' is now a function in the compiler so declarations ! 229: may be fasl'ed in. [this was removed Oct 27, 1982] ! 230: ! 231: Thu Apr 22 20:48:25 1982 by jkf ! 232: #' returns a symbol now, instead of the getd of the symbol. ! 233: This was required for maclisp compatibility. ! 234: (now: version 8.05) ! 235: ! 236: Wed Apr 21 07:50:41 1982 by jkf ! 237: load in init file before compiling. look in . first, then $HOME. ! 238: look for .liszt.o, .lisztrc.l, lisztrc.o, lisztrc.l ! 239: ! 240: Upon interrupt, remove temp file and exit ! 241: (now: version 8.04) ! 242: ! 243: Mon Apr 12 23:22:37 1982 by jkf ! 244: open code 'function'. Now it will cause another function to be ! 245: generated and compiled and the function call returns the ! 246: bcd header for the newly created function ! 247: liszt-process-forms may be filled with forms to compile while ! 248: compiling a form. Unlike liszt-eof-forms, liszt-process-forms ! 249: are compiled at the next opportunity. ! 250: (now: version 8.03) ! 251: ! 252: Wed Mar 31 08:47:46 1982 by jkf ! 253: fixed bug in which (> (or nil 9) 0) would return true. cc-eq ! 254: now rebinds g-trueop and g-falseop. (now: version 8.02) ! 255: ! 256: Wed Mar 31 08:24:27 1982 by jkf ! 257: added a new file to liszt: lversion.l It is not sccsed and it ! 258: just contains the version number. This will allow the version ! 259: number to be changed with ease whenever a modification is made. ! 260: start it at 8.01 (now: version 8.01) ! 261: ! 262: Fri Mar 19 11:17:12 1982 by jkf ! 263: did distribution. (now: version 8.00) ! 264: ! 265: Fri Feb 19 09:56:50 1982 by jkf ! 266: fixed e-docomment so that newlines in the comment will not ! 267: cause assembler problems [io.l] ! 268: ! 269: Wed Feb 17 12:46:24 1982 by jkf ! 270: to version 8.0 (to correspond with Opus 38) ! 271: ! 272: Wed Feb 10 21:28:41 1982 by jkf ! 273: fixed a bug in the return function and a possible bug in go. ! 274: both bugs have to do with returning or going through a ! 275: catch or errset, which is a pretty strange thing to do anyway. ! 276: The fix was to keep track of the number of catches and errsets ! 277: before the prog to be returned from or gone into. ! 278: I modified d-pushframe to always push 3 args, so we can know ! 279: how long each frame we pop will be. ! 280: Sat Dec 5 11:58:36 1981 by jkf ! 281: open coded boole (mods to decl.l and funa.l). used the open ! 282: coding capability of fixnums. ! 283: Added three internal functions fixnum-BitXor, fixnum-BitAndNot ! 284: fixnum-BitOr, which are the three functions which the vax ! 285: can do. ! 286: Mon Oct 26 21:15:36 1981 by jkf ! 287: fixed bug in d-supercxr (funa.l) which made this function ! 288: (cond ((setq y (cxr n zip)) (print 'hi)) ! 289: (t (print 'lo))) ! 290: always prints 'hi'. The problem was that only jump on true was ! 291: checked if the value of a cxr was stored somewhere. In the case ! 292: above we want to jump on nil. ! 293: ! 294: Sat Oct 24 16:41:03 1981 by jkf ! 295: -*- to version 7.1 -*- ! 296: Added the 'a' option to liszt, which if set will cause a ! 297: special form to be output after a function is defined. that special ! 298: form will put a 'fcn-info' property on the function's property ! 299: list. the form of the fcn-info property is ! 300: (argdesc compileinfo) ! 301: argdesc may be nil or (x . y), the later meaning that there are a ! 302: minumum of x args required and a maximum of y. Currently lexprs ! 303: just put 'nil' there, but soon I will introduce a way to declare ! 304: min and max args for lexprs via a declare. The compileinfo ! 305: is a string saying what file this came from and when it was ! 306: compiled. ! 307: ! 308: Wed Oct 21 20:19:53 1981 by jkf ! 309: added functions <&, =&, and >& which are fixnum only ! 310: versions of <,= and >. ! 311: ! 312: Tue Oct 20 22:14:41 1981 by jkf ! 313: fix < and > compiling so that they are only open coded if ! 314: we can be sure that both operands are fixnums. For now this ! 315: amounts to checking that one of the operands is a fixnum. ! 316: We should augment to this check also for type declarations. ! 317: ! 318: Sat Oct 17 11:47:50 1981 by jkf ! 319: since most fixnums are in the range 0 to 1023 we can probably ! 320: win by doing inline checking in that range. Thus I've added ! 321: the function d-fixnumbox which does an inline reboxing if ! 322: the number is between 0 and 1023 and otherwise calls qnewint. ! 323: The file changed was fixnum.l ! 324: ! 325: Thu Oct 8 23:35:34 1981 by jkf ! 326: added cc-= to open code = if possible. It looks for a fixnum ! 327: as one of the arguments and converts the = expression to ! 328: (eq (cdr ..) (cdr ..)) which should do the trick. ! 329:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.