I'm a bit of a PL nerd now rather than invested into a gscript codebase so I'm all for type system change for change's sake here.
I'm curious about first-class functions/closures, and what kind of polymorphism you're going to support. Also will there be generic user-defined types or is that only for dictionaries? Are you going for an llvm backend eventually?
Edit: Function-local type inference?
Edit: Also what happens when a gs2 script triggers a gs3 scripts and sends along arguments with the wrong types?