Earlier quoted context omitted.
Exactly! While tests, on the other hand, totally guarantee correctness. I don't get why people try to use sophisticated types systems to prove software, when writing and maintaining tests is so superior, and funnier too!
What? Tests don't guarantee correctness. Sophisticated type systems can prove correctness. See Idris for instance.
Python Is Eating the World
651–660 of 993 posts
Re: Python Is Eating the World
#652Earlier quoted context omitted.
I'm not the person you're responding to but what they say resonates with me as a Python developer. I believe Python is quite possibly the best language for a few things * Exploratory programming - such as what data scientists do * Writing programs that will never grow beyond 150LOC, or roughly what fits on a screen + one page down When I have those two constraints met I am almost always choosing Python. Here are some…
Can you explain the use case for your unsound type system? Is it unsound just because mypy types are inexpressive?
Python without type annotations can be painful in an IDE - it chokes a lot on those features.
Since I don't take a very type driven approach to Python (it would be too slow since I'd have to figure out 3rd party library types and shit like that) I just write annotations in places where I personally know the type. Mypy complains about this for various reasons - probably because my annotations are not technically correct, because I'm not a pro at generics in mypy and working out inheritance, as well as general mypy issues like poor support for class methods and that sort of thing.
But I ignore all of those errors because the IDE can still work things out.
Re: Python Is Eating the World
#653Holy Crap! What a lot of irrational, hyperbolic hate for Python. I think everybody should spend their first couple of years working in Fortran IV on IBM TSO/ISPF. No dependency management because you had to write everything yourself. Or maybe [edit: early 90's] C or C++ development where dependency management meant getting packages off a Usenet archive, uudecoding and compiling them yourself after tweaking the config…
Well I actually feel betrayed... Python 1.4 was an awesomely simple programming environment and I pretty much immediately fell in love with it. Then features were added. Now it is a whole home improvement store full of kitchen sinks. I think that programming is a sort of theological process. Popular languages attract ideas. Unfortunately, in the case of Python, those ideas were not effectively filtered and now we hav…
I've used Python at the time (and up to now). It was a revelation compared to Perl, but it sucked compared to modern Python.
What exact features you have a problem with?
Re: Python Is Eating the World
#654Re: Python Is Eating the World
#655Earlier quoted context omitted.
I'm not the person you're responding to but what they say resonates with me as a Python developer. I believe Python is quite possibly the best language for a few things * Exploratory programming - such as what data scientists do * Writing programs that will never grow beyond 150LOC, or roughly what fits on a screen + one page down When I have those two constraints met I am almost always choosing Python. Here are some…
> and multiprocessing is a dead end. Why is multiprocessing a dead end?
Re: Python Is Eating the World
#656Earlier quoted context omitted.
That doesn’t even work in all situations. What if the system requires development packages? What if it’s a different OS or architecture? Packaging is a nightmare.
What if you are on Linux and your binary requires a slightly newer version of glibc for some reason etc. Static, portable binaries on Linux are hard.
That’s why it can’t be an afterthought. It must be baked into the language as part of the design (golang)
Re: Python Is Eating the World
#657Earlier quoted context omitted.
I'm not the person you're responding to but what they say resonates with me as a Python developer. I believe Python is quite possibly the best language for a few things * Exploratory programming - such as what data scientists do * Writing programs that will never grow beyond 150LOC, or roughly what fits on a screen + one page down When I have those two constraints met I am almost always choosing Python. Here are some…
What you’re describing is what happens when you have a developer who’s bad at their job. I see the point that python invites these anti patterns. But on the other hand, a software developer that returns Union(list[item], item]) in Python is probably also going to mess up a Java program sooner or later.
Re: Python Is Eating the World
#658Earlier quoted context omitted.
Agreed. I really don't understand all these buckets filth being poured on Python in this thread. It's a first language I worked with in my life that just clicked with my brain and doesn't just drain me. I would take a Python job over a Java/C/C++/Go/Rust any day. There's some languages that could pull me away from Python (Nim, Crystal) but they're nowhere popular enough to move wholesale to them.
> I would take a Python job over a Java/C/C++/Go/Rust any day it's funny, I feel the exact opposite. I work on a team that maintains a digital catalog, and a lot of what we write is about taking in asset- and metadata files, asynchronously processing them, and then publishing that to a denormalized read-optimized data store. We often joke that we mostly take data from 'over here' and put it 'over there'. All our stuf…
So, basically, if you go out of your way not to use Java as is, Java is not so bad for the task?
Re: Python Is Eating the World
#659Earlier quoted context omitted.
It’s running over HTTPS from an auditable source. Is that _really_ so much worse than a pip install, and can you explain in detail why you believe that to be true?
Somewhere, I can hear John Siracusa saying, 'curl piped into a shell? No thanks.'
Re: Python Is Eating the World
#660Holy Crap! What a lot of irrational, hyperbolic hate for Python. I think everybody should spend their first couple of years working in Fortran IV on IBM TSO/ISPF. No dependency management because you had to write everything yourself. Or maybe [edit: early 90's] C or C++ development where dependency management meant getting packages off a Usenet archive, uudecoding and compiling them yourself after tweaking the config…