Arduino simulator written in Python (C++ better)

Being interpreted actually is not a drawback it is a benefit.

And the down side is that you can't tell if there is a syntax error until that bit of code is executed.

Actually the speed can be better than writing in C++, because optimized C++ libraries are drawn upon.

No that is not correct, you have to do the function anyway C will always be faster.