Annotation of 43BSD/ucb/lisp/liszt/ChangeLog, revision 1.1.1.1

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:        

unix.superglobalmegacorp.com

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