Official Amarna Forum Opinion on the Python Programming Language
#1
It's alright.
#2
Hating a programming language is the hallmark of a novice. Every serious language is fine to use for a wide variety of tasks once you get accustomed to it, and a language's design involves many tradeoffs that make it more or less useful depending on your goal.
#3
Python has basically C-like syntax without any C-like efficiency. Since its type system isn't stronger than C's, none of its changes are improvements (they all fall under metalanguage macros). The best that could be said about Python is that it has garbage collection.
#4
And it's libraries (some of which make heavy use of raw C for mathematics), and it's ease-of-debugging, and it's flexibility.
#5
Do you ever use Jupyter Notebook? I like it a lot.
#6
(09-07-2023, 05:06 PM)Mason Hall-McCullough Wrote: Hating a programming language is the hallmark of a novice. Every serious language is fine to use for a wide variety of tasks once you get accustomed to it, and a language's design involves many tradeoffs that make it more or less useful depending on your goal.

With the marked exception of Javascript/Typescript. Horrible language.

I use Jupyter quite a lot for A.I. work.
#7
With Mason on this.

The worst strain of autism is thinking about the efficacy of a programming language in the abstract, rather than what you can do with it. Is it a good tool for a specific purpose/project, or is it not?

Still, I'll give an answer: Programming languages are only ever 'bad' if they commonly enforce terrible mandatory paradigms - old JS Callback Hell is a good example (though modern JS is relatively cozy). Python is robust and flexible and you retain the ability to adopt any paradigm/style/design principle you wish - as is the case with almost every other modern language. As for a programming language being 'good': It is only as good as the libraries and tooling available to it. We don't code from scratch in 2024, we pull from github and form complex assemblages, hacking in the features we need as we go.
#8
That's rather the contention. I like Python for it's multimodularity, it's toolchain, it's dead-simple syntax, it's interoperability with other, lower-level languages. That makes it a "good language".
#9
Zed Wrote:The worst strain of autism is thinking about the efficacy of a programming language in the abstract, rather than what you can do with it. Is it a good tool for a specific purpose/project, or is it not?

Also in agreement here. The #1 thing which determines what you can do with a programming language is how well you can leverage and build upon the work of of others i.e. does the language have good libraries. With python this is a definite yes. Sure there are performance considerations, but in terms of building the first iteration of something useful with the least amount of friction I would find it hard to recommend something other than python except for in specific cases. (Also, I'm kind of out of the loop here, but it seems like there have been some performance improvements recently as well.)
#10
There's nothing wrong with considering just the functional components of a language, as well as just considering the abstractions and operations the language can perform. The language, being slightly greater than the sum of it's parts, needs to be considered in totality; there must be people who care about memory allocation, strict type definition, and making sure the absolute mistake that is operator overloading never gets into another language.
#11
I finished a project with a python framework in 4 hours, and it was better in every way than what my colleagues managed as a team with react and spring boot in 2 months. Python ftw



[-]
Quick Reply
Message
Type your reply to this message here.




Users browsing this thread: 1 Guest(s)