lua-users home
lua-l archive

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

Sorry for the spam, somehow this original email got cut off :)

>I really do not like the way you are outputting tables at 
>It's way too ambiguous. In fact, two completely different 
>tables could actually yield the same exact output.
>> a = {}; b = {}; c = {}; a.b = b; b.c = c; c.b = b; print(a)           
>{ b = { c = { b = {<self> } } } }                                       
>> a = {}; b = {}; c = {}; a.b = b; b.c = c; c.b = a; print(a)           
>{ b = { c = { b = {<self> } } } }  
>There are many solutions to this, though none of them are 
>exactly what I'd call "easy." However, I personally think 
>better to output the Lua interpreter-style "table: 
>than it is to try to dump this out if it's going to be 
>ambiguous like this.
>Aside from this, except for the loadstring() issues 
>mentioned, you seem to be fairly decently locked down, but 
>unless you got assistance from 

... some of the people that have built Lua bots, etc. in the 
past, I do hope you've had a few other people take a look at 
the code already. In my experience testing these types of 
tools, it's never right on the first pass (there's always 
something hidden to get around in there).

On a similar note, in my attempts to break through your 
sandbox, I noticed that your output is not respecting the 
__tostring metamethod on tables. Is this intentional?

-- Matthew P. Del Buono
Embry-Riddle Aeronautical University
EcoEagles, Software Team Leader