1 - Start treating arrays as a proper type, instead of an object. We have string, number and bool, why not array?
IIRC, Classic had some support for arrays as an expression type, but it was difficult to get right. One of the main problems was whether to use copy or reference semantics. Copy is easy and convenient, but if you're dealing with a 10mb array will quickly hammer performance and bloat memory. References were very difficult to get the memory management right for in C++. This would be easier in JS, but then makes for some gotchas - for example if you put an array object's array in to an object's instance variable then change it from there, both get updated, and that might not be what you wanted.
[quote:3rgsnepg]3 - Pointers as a type. This means you can store references to an object inside another object, as a property. Right now you can do this by storing the object's ID, but you can't do stuff like player.weapon[1].destroy() in a single event
The event system is very different to programming languages, so when you suggest a feature and give a line of programming code as an example, I'm not sure how exactly you think this would really work! UIDs already allow this, and as per the way events usually work, you need the condition to pick the instance to run the actions on, so there needs to be a condition involved either way...
[quote:3rgsnepg]4 - First class functions. You should be able to return functions as well as store functions as properties of an object. This is something that javascript can already do, so why not?
Again, if you just throw out a programming language feature, how would that really look in the event system? And why would that be useful?
I'd add most of the other suggestions in this thread have been suggested several times in the past - we have a very long todo list, and a finite amount of hours in the day. So if you really want a feature suggestion to be taken seriously, you should go in to detail about how it would work, give several examples of previously difficult things that become a lot easier with the feature, and some reasons why it's important enough to do before all the other feature requests we have!