[BUG] ++ is TOO destructive ...

Started by newdep, April 02, 2011, 02:02:32 AM

Previous topic - Next topic

newdep

I think this is a bug Lutz...


Quote
newLISP v.10.3.0 on Linux IPv4/6, execute 'newlisp -h' for more info.



> (symbol? a)

nil

> (symbol? b)

nil

> (symbol? 1)

nil

> (symbol? '1)

nil

> (++)

1

> (symbol? a)

1

> (symbol? b)

1

> (symbol? 1)

1

> (symbol? '1)

1

>


ps: goes for (--) as well...
-- (define? (Cornflakes))

Lutz

#1
This is fixed here: http://www.newlisp.org/downloads/development/inprogress/">http://www.newlisp.org/downloads/develo ... nprogress/">http://www.newlisp.org/downloads/development/inprogress/



There will be a maintenance release later. This bug stayed undetected since 10.2.

cormullion

#2
> (dotimes (x 10) (++))
10
> (++)
11
>


must be useful somehow? :)

newdep

#3
Hi Lutz,



It took some time to discover that my functions where all returning 'true ;-)

..to this (++) issue.. quite funny actualy but not consistant, thats how i discovered it. Thanks for the quick fix!



The main difference now between (++) and (inc) is integer and float handling, could then (++) and (--) be

handled like (inc) and (dec) too? Just to takeaway confusion on the function format ?



Example from 10.3.1 ->



> (++)

ERR: invalid parameter in function ++



> (inc)

1
-- (define? (Cornflakes))

Lutz

#4
'inc' and 'dec' are fixed too now: http://www.newlisp.org/downloads/development/inprogress/">http://www.newlisp.org/downloads/develo ... nprogress/">http://www.newlisp.org/downloads/development/inprogress/