Some basic questions from a newbie Robotics team

A few comments re Python.
The Python code is compiled on the V5, we actually download source and turn into byte code before execution. This means most errors are runtime errors as opposed to compile time errors that you may get with C++. When you hit “build” in VEXcode, we send the source off to a cloud server for linting, that’s why errors are not displayed as you type code. Perhaps at some point I will (be allowed to) release the VScode V5 plugin I have, that’s makes working with Python a better experience.

I’ve looked at adding a numpy like library.

The last time I tried to integrate this it had too many errors and was going to compromise the core implementation we have, hopefully I can revisit this at some point.

You can import modules from SD card. see this.

Supporting multi file beyond this is difficult on V5, the architecture for loading and executing programs expects a single file (usually a compiled binary) that can at most pre-load one other program or file (which is how we launch the Python VM and is the mechanism PROS uses to allow the hot/cold linking system). We could compile all the Python source files into a single bytecode file, but that then means we have to include all the platform specific build tools into VEXcode, it was far easier to allow the V5 to that work.