None of that is “Python”. You want to learn a language and automatically know everything there is to know using Math?
A hammer is beginner friendly, but learning to use a hammer doesn’t necessarily mean you’re ready to build a house with it.
The sea should be marked as C considering that’s what you’ll discover when you get deep into it.
https://en.m.wikipedia.org/wiki/PyPy
Their greatest mistake was not naming it Ouroboros.
The reason C becomes relevant to Python users isn’t typically because the interpreter is written in C, but because so many important libraries (especially numpy) are implemented in C.
Extension modules are implemented in C because the interpreter is written in C. If it were written in another language, folks would write extension modules for that language instead. Also, it would be less relevant if people used portable C bindings like cffi, which are portable to PyPy and other interpreters… but they don’t.
Extension modules can be, and are, written in Rust and C++. And PyPy has a compatibility layer to run extensions (such as numpy) that are written for CPython.
The reason extension modules are typically in C is of course the API is in C, but that’s true of
cffi
as well (though you’re right thatcffi
is more portable). And the reason the API is in C is more fundamental than “CPython is written in C”.
Oh for sure, and some of those are not ok with swapping the interpreter out 🤣
The mistake was choosing a language, and afterwards searching for a use to the language you just learned.
Among all of them at least python is the choice generically people learn when they don’t want to learn programming, just want to program stuff as a helper tool to manage data. For those, python is just fine and the learning material around is tailored to for that.
That’s how you trick people into programming. You then see people making scripts that take days to run, but it’s fine, they’re only going to use it twice and are busy enough to be able to wait
You then see people making scripts that take days to run, but it’s fine, they’re only going to use it twice and are busy enough to be able to wait
Sponsored by “terrible python code by Matt Parker”
Dynamic typing, special and unique syntax for every language feature, interpreter intrinsics
Honestly, I’ve been using type hints very heavily since they became a thing. I just use IDE completion too much to do without them.
Operator overloads, descriptor protocol, decorators
Operator overloads are excellent for readable code when used well - I object to their inclusion on this list.
As long as you don’t have to implement it yourself.
Was this made with AI?