variables are stored internally as different types. they can be numbers, strings, or booleans. when using variables with number operations (such as addition), scratch casts the variable to a number if it isn't already one. i made this project to test out the performance of different casting methods; the performance varies between scratch and turbowarp. if you want to learn more, i've commented parts of the code explaining what the tests actually do.