The main reason for this change is for writing more descriptive code
Such a change isn't impossible with JS but requires annoying doccing that most dev environments don't really pick up on ever
Also the cache system is goingto be much more complex than anything else in this project so static compilation should help remove annoyances