Page 1 of 1
					
				development release newLISP 9.2.15
				Posted: Sun Jan 13, 2008 9:40 pm
				by Lutz
				More bugfixes for the upcoming 9.3 release. Source only.
files and changes notes: 
http://newlisp.org/downloads/development/ 
Lutz
 
			 
			
					
				
				Posted: Sun Jan 13, 2008 10:52 pm
				by cormullion
				assoc, set-assoc (old replace-assoc) and new assoc-set all take mutiple keys  for multilevel association lists
That's an interesting bug fix! :) I'd love to try it out, but it's source only ...
 
			 
			
					
				
				Posted: Sun Jan 13, 2008 11:44 pm
				by newdep
				Hi lutz,
Scripts that use replace-assoc dont give a warning they just behave strange..
..Are you stripping replace-assoc from 9.3.0...?
Norman.
PS: actualy... set-assoc & replace-assoc both dont work...
			 
			
					
				
				Posted: Mon Jan 14, 2008 12:07 am
				by Lutz
				Scripts that use replace-assoc dont give a warning they just behave strange..
can you be more specific? 'replace-assoc' runs the usual tests fine. 'set-assoc' is the renamed 'replace-assoc', but the old naming will stay for a while.
Can you give a specific example where 'replace-assoc' now behaves differently? I want to release 9.3 in a few days, so this would be important to know.
Lutz
 
			 
			
					
				
				Posted: Mon Jan 14, 2008 12:09 am
				by newdep
				See the pinballs.lsp demo... there is replace-assoc in there ;-)
Run it and it wont work..change replace-assoc to set-assoc it wont work eighter? I cant see whats happening ;-)
			 
			
					
				
				Posted: Mon Jan 14, 2008 12:11 am
				by Lutz
				Yes, I am seeing this, it seems not to do the increment of the variables, thanks for catching this.
Lutz
			 
			
					
				
				Posted: Mon Jan 14, 2008 12:16 am
				by Lutz
				v.9.2.15 has been retracted, I will post a 9.2.16 later
Lutz
			 
			
					
				Why ?
				Posted: Mon Jan 14, 2008 11:14 am
				by newdep
				Hi Lutz..
Why "string index out of bounds" ? ->
> (set 'a 10)
10
> (set 'b '( "one" "two" "three"))
("one" "two" "three")
> (set 'c '( "high" "low" "vertical"))
("high" "low" "vertical")
> ( (b 2) a (c 0))
string index out of bounds
			 
			
					
				
				Posted: Mon Jan 14, 2008 12:24 pm
				by Lutz
				Because (c 2) evaluates to a string, the next expression a -> 10 is taken as an index into the string "vertical" and overflows, because vertical only has 8 characters.
Lutz