Don't get me wrong, increasing consistency across exports is a GREST step forward.
However, A lot of people in this thread seem to be ignorant to the issues that come from mixing types in operators haphazardly.
Let's take an example:
We read in 2 text files from two different places using some mechanism or another (perhaps we are using JSON files and getting ds_maps).
We them sum those numbers together:
var value = map0[? "A"] + map1[? "A"];
Let's assume that because of the file format we chose, or loading method, the values in map0 are all Integers, but in map1, our values are strings.
Now variable 'value' is an integer, and gets to be used to index arrays, change an objects position, etc.
Now as we keep developing our game, and testing it with our files, we see no issue as map0 produces integers and map1 produces strings.
Now later in the project, we choose to change one of our files, and instead of having map0 be integers, map0 now produces strings.
Worst! Lest assume we shipped the game and a client decided to change the values.
Now rather than our variable being an integer, it's a string, and as it gets passed through the project it's converts a bunch of other variables to strings !
Horror! We could get a string related issue that is now very hard to debug, as the actual string "Misuse" could be very far away from our file parsing.
Worst again; it cod even not show up as an error, but absolutely tank performance!
The string could get passed around, and GM could be doing checks to see if its Integer-Like every time we use it. In a tight loop, that could grind our game to a halt.
Just changing that one file could do that, and boy or boy are you in for a debug session when you are apparently doing he exact same operations as before, but with a different file, and yet your performance gets slashed in half.