Hi,
Ethin wrote:Python most definitely isn't slow, if you fully utilize multithreading and coroutines. If it were slow, it wouldn't be used for heavy machine learning algorithms, data mining, big data, cryptocurrencys, and so on -- things that require high-speed computing.
Just wanted to comment on this first.
Python itself isn't exactly slow, its just slower than low-level languages like C or C++ or assembled languages like C#, due to its just-in-time processing and the interpreter. The fact that it can be used for calculation-heavy and time-critical applications is because its standard library, syntax and built-in features are just amazing and you can create a script using libraries like tensor in a few minutes. Tensor itself again is just a Python extension written in some other language like C with a Python wrapper on top of it to simplify access even further.
Same goes for all other big data analysis tools. The libraries themselves are written in highly performant languages to enpower Python scripts with the best speed possible, but the data analysis results can be easily processed using Python.
I myself used to develope audiogames in Python, and it was fun, but I ended up stopping to do so, because it wasn't what I expected. It worked, but it simply didn't feel that great doing so, it kinda felt like hacking something together instead of feeling like I was doing something really cool.
I used Pygame those days, even a really old pygame version (1.7.1 I believe), since I found out that sdl2 used in any higher pygame version simply crashes on very old laptop graphics cards produced by ATI (which is AMD nowadays). I was using accessible output 1 (not 2), which I enhanced by adding compatibility to 1 or 2 more screen readers.
For popups which needed to show real windows I accessed Tkinter, because its already within the standard library. Sound was realized using Bass4Py (https://github.com/Timtam/Bass4Py), which is currently in the refactoring process and will be releazed with full Cython bindings soon enough.
Regarding Cython: if you want to easily wrap a shared library or write time-critical algorithms in Python (or pythonish style), you can use Cython, which compiles down to a Python extension built in C and therefore drastically increases performance, even adding in typechecking and loads more. Check it out.
Best Regards.
Hijacker