[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: A few bugs/undocumented features



    Date: 26 Jan 1981 1648-PST (Monday)
    From: sdcsvax!davidson@Berkeley
    To: ucbvax!lisp


    1) (mapcar (functin quote) '(lions tigers bears)) dosn't work

if you expect this to return (lions tigers bears) you should define kwote

(def kwote (lambda (x) x))

and map it over the list.   You are asking for trouble if you map an nlambda
over a list.  The reason the mapcar fails is the same reason that
(funcall 'quote 'a)
fails, an nlambda expects a list as an argument.

    2) (implode '(lions tigers bears)) => ltb rather than lionstigersbears
here the manual was not explicit enough. implode is only defined to take
arguments which are single characters or fixnums.  The Maclisp manual
does not say what it does when an argument is a symbol whose pname is
longer than one character, so we decided to just use the first character.
Use the function concat to concatenate entire print names.

    3) (pp environment) causes a bad memory reference
the environment contains dotted pairs and our crufty pretty printer sometimes
gets confused by these not listy structures.  CMU probably has a better
pretty printer (although theirs may require a `print macro' capability to 
work).  
==>> While we are on the subject of utility packages for Franz, we should
     mention that we and Lars Ericson at CMU have decided to maintain
     a central distribution center for our lisp software on a computer
     here at Berkeley which will soon (2 months) be on the Arpanet.
     When this all comes about we will let everyone know and will encourage
     you to contribute your software to this pool.

    4) (oblist) reports nil twice (I havn't rechecked this in Opus 34
this is true.  Look in your mailbox in a few days for the fix for this
bug  (and for all the others you've found).  I will also send the fixes
to the franz-composers mailing list  so someone at every site should receive
it.

    5) Franz Lisp chokes when it comes up on some environments.  In particular,
    an environment with extensive TERMCAP and EXINIT variables, with embedded
    control characters seems to be a cause of this.  (not shown on typescript.
    If the problem does not immediately occur to you, please let me know and
    I'll restore my old .login with those settings and send you a duplicatable
    typescript).
this is unfortunate.  The problem is the creation of the value of the
environment variable, which in fact is not even necessary, since the
getenv function does not use it.  This has never happened to anyone here
so you must be running with different terminals.  I suggest you just
make the makenv function in inits.c return immediately instead of try
to create the value to store in the environment variable.  Let me know
if you really care about the environment variable.

    6) alphalessp seems to be an alphaleqp, also, it chokes on strings!
We just noticed the bug in alphalessp here a few days ago.  the bug will
be fixed and it will work for strings.  Again, check you mailbox for
the fix.