Earlier quoted context omitted.
A lot of these problem spaces can get away with single threaded performance because maybe they're generating a report or running an analysis once a day or at even slower frequency. I work in a field where numerical correctness and readability is important for prototyping control algorithms (I work on advanced sensors) and python satisfies for those properties for our analysis and prototyping work. When we really want…
debugging dynamic python and imperative stateful python after a certain code base size >10k LOC gets extremely painful for any meaningful scale you are better served by basic FP hygiene as evidenced in haskell elixir CL/racket or rust/golang
Why Python keeps growing, explained
381–390 of 459 posts
Re: Why Python keeps growing, explained
#382Earlier quoted context omitted.
I sometimes think about what Python would be like if it were written today, with the hindsight of the last thirty years. Immutability would be the default, but mutability would be allowed, marked in some concise way so that it was easy to calculate things using imperative-style loops. Pervasive use of immutable instances would make it impossible for libraries to rely on mutating objects a la SQLAlchemy. The language…
You should check out Julia ( https://julialang.org/ ), that's very close to what you describe.
Julia is both dynamic and fast. It doesn’t solve all issues but uniquely solves the problem of needing 2 languages if you want flexibility and performance.
Re: Why Python keeps growing, explained
#383Earlier quoted context omitted.
Did you rewrite the whole thing or just drop into C for the relevant module(s)? Because the ability to chuck some C into the performance critical sections of your code is another big plus for Python.
But... pretty much any language can interoperate with C, it's calling conventions have become the universal standard. I mean, I still remember at $previousJob when I was deprecating a C library and carefully searched for any mention of the include file... only to discover that a whole lot of Fortran code depended on the thing I was changing, and I had just broken all of it (since Fortran doesn't use include files the…
https://docs.julialang.org/en/v1/manual/calling-c-and-fortra...
Re: Why Python keeps growing, explained
#384Earlier quoted context omitted.
It is hard to believe that Python is objectively that much more productive than other languages. I know Python moderately well (with much more real world experience in C#). I like Python very much but I don't think it is significantly more productive than C#.
Python is out of this world more productive in the Science space and Data space. The only thing that can compete with it for productivity in the science space is R.
Re: Why Python keeps growing, explained
#385Earlier quoted context omitted.
debugging dynamic python and imperative stateful python after a certain code base size >10k LOC gets extremely painful for any meaningful scale you are better served by basic FP hygiene as evidenced in haskell elixir CL/racket or rust/golang
I don’t get it. Go is as imperative as a language can be.
Re: Why Python keeps growing, explained
#386Earlier quoted context omitted.
Totally depends on the business you're in. If you're dealing in areas with short time limits then Python is great, because you can't sell a ticket for a ship that has sailed. And I've seen "the right way" which, again, depending on the business may result in a well designed product that is not what's actually needed (because people are really bad at defining what they want) What's brilliant with Python compared to ot…
It is hard to believe that Python is objectively that much more productive than other languages. I know Python moderately well (with much more real world experience in C#). I like Python very much but I don't think it is significantly more productive than C#.
Re: Why Python keeps growing, explained
#387I think one reason for Python growing popularity is because it's become the default tool in some domains whether it is the best tool or not. This week our Director ordered a total rewrite of two years of work in Python. His rationale: it's what everyone else uses in this space. No reason specific to our use case, just simply to follow the herd. I realise that a large community translates into easy hiring and rich eco…
It's really funny that one of the subheadings under "Why is Python so popular?" is "It has high corporate demand."
Re: Why Python keeps growing, explained
#388Github is primarily a website for developers, right? Who is the blog for? This article is garbage. It reads like SEO trash and I'm not sure why Github feels the need to publish it. It's just a list of common Python talking points. Points that the author displays a poor understanding of. The article doesn't really attempt to explain why python keeps growing but the facts listed vaguely suggest that it "keeps growing"…
Re: Why Python keeps growing, explained
#389Earlier quoted context omitted.
A lot of these problem spaces can get away with single threaded performance because maybe they're generating a report or running an analysis once a day or at even slower frequency. I work in a field where numerical correctness and readability is important for prototyping control algorithms (I work on advanced sensors) and python satisfies for those properties for our analysis and prototyping work. When we really want…
debugging dynamic python and imperative stateful python after a certain code base size >10k LOC gets extremely painful for any meaningful scale you are better served by basic FP hygiene as evidenced in haskell elixir CL/racket or rust/golang
Re: Why Python keeps growing, explained
#390Earlier quoted context omitted.
A lot of these problem spaces can get away with single threaded performance because maybe they're generating a report or running an analysis once a day or at even slower frequency. I work in a field where numerical correctness and readability is important for prototyping control algorithms (I work on advanced sensors) and python satisfies for those properties for our analysis and prototyping work. When we really want…
debugging dynamic python and imperative stateful python after a certain code base size >10k LOC gets extremely painful for any meaningful scale you are better served by basic FP hygiene as evidenced in haskell elixir CL/racket or rust/golang
(loop for x across numbers
when (evenp x)
do (setf result (+ result x)))
I mean yeah, you can do FP in CL, but it allows you to program in any paradigm which you prefer.