Is Python slowly losing its charm?
-
Quote:
scripting languages are not suitable for complex problem solving.
It depends... I wrote a fairly complex application (at least from my point of view) using
Lua
."In testa che avete, Signor di Ceprano?" -- Rigoletto
Reminds me a fairly significant program I wrote in DCL (Digital Command Language) once -- it was an accomplishment, not to be repeated.
-
Reminds me a fairly significant program I wrote in DCL (Digital Command Language) once -- it was an accomplishment, not to be repeated.
-
Yeah, there are project groups in our organization that make similar claims. Still, I beg to disagree. Although it may be "possible" to use a given tool, doesn't mean it is suitable. Disclaimer: I know nothing about Lua. From skimming trhough the Wikipedia description, I am sort of curious to hear the reasons for choosing Lua for complex problem solutions over other alternatives.
Lua
is easily embedded in aC/C++
application, and that works also in the opposite direction, it is easily extensible usingC/C++
libraries. So, my first plan was to embedLua
in aC++
application (and write numerousC
libraries for low level tasks). Eventually, I found no real need for theC++
code."In testa che avete, Signor di Ceprano?" -- Rigoletto
-
https://towardsdatascience.com/python-is-slowly-losing-its-charm-9ca652726492[^] my opinion: To me, it's always seemed like a toy language like BASIC.
-
CPallini wrote:
Python
is not a toy languageAgreed, its not, and it is very powerful and versatile language, etc. I personally have no need for it in my personal software projects or work projects. I hear it is a great language for data analysis, etc.
Slacker007 wrote:
I hear it is a great language for data analysis, etc.
I know a couple of people using it for big data and similars and they just say it is the best, I have never used it though so I can only say what I was told.
M.D.V. ;) If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about? Help me to understand what I'm saying, and I'll explain it better to you Rating helpful answers is nice, but saying thanks can be even nicer.
-
https://towardsdatascience.com/python-is-slowly-losing-its-charm-9ca652726492[^] my opinion: To me, it's always seemed like a toy language like BASIC.
I see many people out there having little idea about python and saying that they know it's good for data science. Here's my 5 cent as a data scientist. Python has some well-developed libraries for data science. Those libraries, like pytorch, are written in C++, and are indeed easy to use via pyton. That being said, I started developing in pyton for a single reason that my younger colleagues didn't know other languages, and I needed to both have common ground with them and also to show that I am at least just as capable as they are on this ground. Those colleagues were at odds with understanding strongly typed language syntax, btw. This, in my opinion, creates a vicious cycle. With more and more - and, hence, less and less qualified - human resources being pumped in the hot field of AI, those need to be trained fast on the most entry-level language possible, allowing for neural networks and stuff. For now it's python here. As more and more people in AI are now python exclusive, qualified developers focus more at delivering AI libraries for python. Remember, those people often have trouble understanding the difference between a class and an object, so strong typization is a burden for them. Whereas I, used to work with demanding projects and trained in pure math, ended up strongly typing in python (which it allows for), otherwise loosing track. On top of that, Microsoft screwed up with its C#-compatible CNTK library, dispersed its effort to include python support again, lost miserably to other libraries, and that's the last I've heard of it. In Java, there is a pretty neat and viable alternative library Deeplearning4j that does all - well, most - things python libraries do, has neat syntax, uses Java 8, and is overall pretty satisfying. I prefer workig in it even though in general I despise Java for multiple reasons. I actually believe Deeplearning4j is one of the few reasons to like Java for.
-
https://towardsdatascience.com/python-is-slowly-losing-its-charm-9ca652726492[^] my opinion: To me, it's always seemed like a toy language like BASIC.
when compared to Julia any language does have its share of disadvantages
-
Slacker007 wrote:
This goes back to a post I made a few days ago, where I said that the world is throwing technology at everyone, hoping many become programmers, engineers, etc. Python was supposed to be the language for the masses. Only problem is, the masses don't like programming.
So were Basic, SQL, and COBOL at times in the past. Same as it ever was. Same as it ever was.
Did you ever see history portrayed as an old man with a wise brow and pulseless heart, weighing all things in the balance of reason? Is not rather the genius of history like an eternal, imploring maiden, full of fire, with a burning heart and flaming soul, humanly warm and humanly beautiful? --Zachris Topelius Training a telescope on one’s own belly button will only reveal lint. You like that? You go right on staring at it. I prefer looking at galaxies. -- Sarah Hoyt
And you may ask yourself: "Well, how did I get here?"
-
No, it is worse. It's syntax is C infested.
-
In my opinion
Python
is not a toy language (and evenBASIC
wasn't). That said,Python
is far better thanBASIC
(andLua
is even better thanPyhton
). Scripting languages have their usage."In testa che avete, Signor di Ceprano?" -- Rigoletto
For a starter, Python is advocaded for sci and eco. But it has no fixed point datatype. So sci and eco learned what takes eons for prog, still delivering bugs months after using the delivered software. 0.5 + 0.5 = x is a hard to solve equation.
-
And you may ask yourself: "Well, how did I get here?"
I'm not the only one to think 'Talking Heads' then...
-
https://towardsdatascience.com/python-is-slowly-losing-its-charm-9ca652726492[^] my opinion: To me, it's always seemed like a toy language like BASIC.
I prefer Haskell, but I haven't been able to use it much lately.
-
Why I Start Python then always Stop I like a lot of programming languages. C# is my favorite, but I like C++, Pascal, C, Java, Kotlin (more & more all the time), even Swift (very Kotlin-like), TypeScript and I also like JavaScript -- even though it has a lot of annoying things like === etc. I try to like Python, I really do. But there are a number of reasons that every time I start using it again I stop. 3) whitespace dependent. I've hurt myself with this where code fails due to having a tab where I should have 3 spaces or vice-versa. It's annoying. Just use some friggin' brackets. 2) global variables in file. If you define a variable in a file it is global to every function in that file. What!?! Yep. It's painful and confusing and a bad idea. 1) But the number one, knock-down, all-time biggest reason I just can't get past it is the use of double-underscores. X| Yes, I'm a syntax snob. :-\ It's just the ugliest syntax ever and I don't want to type underscores all the time! It's so ugly to look at Python code. Here's a sample from official documentation:
class Mapping:
def __init__(self, iterable):
self.items_list = []
self.__update(iterable)def update(self, iterable): for item in iterable: self.items\_list.append(item) \_\_update = update # private copy of original update() method
It's so ugly, so I just stop Python as soon as possible and go back to one of the good languages. I was also wondering why Van Rossum (creator of Python) used underscores so much and there are some good explanations in this post. But there is no excuse, because other modern languages have not had to use characters like that. Why does python use two underscores for certain things? - Stack Overflow[^]
On global variables in Python: it is misleading to say, without qualification: "If you define a variable in a file it is global to every function in that file." It is true that if you define and/or use a variable outside a function, it becomes globally visible to 'subsequent' code within the file. It is, however, treated as read-only outside its original scope unless it is specifically declared as global within a function definition. I can see that even the read-only visibility of such variables may be offensive to those to whom the thought of global variables is anathema, but I do not find it so.
-
I'm not the only one to think 'Talking Heads' then...
I'm glad I'm not alone in that :)
-
No, it is worse. It's syntax is C infested.
I resent that... I love the C syntax. I might be biased because I learned Macro-11 Assembly before C, and there is a one to one mapping on most C statements.
-
In my opinion
Python
is not a toy language (and evenBASIC
wasn't). That said,Python
is far better thanBASIC
(andLua
is even better thanPyhton
). Scripting languages have their usage."In testa che avete, Signor di Ceprano?" -- Rigoletto
to get a fixed block read of block X. You declared the block size when you opened the file. We used this for lightning fast Hash Lookups. Extensible? We had to modify the OS to add "sys" calls to a jump table. But we could do it. Now, BASIC allowed DLL calling in windows. And Python allows wrappers of compiled code. Finally, to me the MOST POWERFUL piece of an interpreted language is the ability to EMBED it as a scripting language inside of an Application to let the end users extend it. I wrote applications inside of Word and Excel for people. It broke my heart when I went to embed VBA inside of my application, and ran into MSFT Licensing (OMG Draconian). So we used a different scripting engine that was free and based on Pascal. It worked... But I would have loved for the product to have the Power and Libraries of Python! -
https://towardsdatascience.com/python-is-slowly-losing-its-charm-9ca652726492[^] my opinion: To me, it's always seemed like a toy language like BASIC.
-
I resent that... I love the C syntax. I might be biased because I learned Macro-11 Assembly before C, and there is a one to one mapping on most C statements.
They come out of Math class where = means equality, go to the next class, in gentle Python = means let be equal...
-
On global variables in Python: it is misleading to say, without qualification: "If you define a variable in a file it is global to every function in that file." It is true that if you define and/or use a variable outside a function, it becomes globally visible to 'subsequent' code within the file. It is, however, treated as read-only outside its original scope unless it is specifically declared as global within a function definition. I can see that even the read-only visibility of such variables may be offensive to those to whom the thought of global variables is anathema, but I do not find it so.
So, in short, it is the Python way of the singleton pattern?
-
Unity used to have boo a python scripting language. No one used it though as Unity also had C#. Me personally I prefer C#.
Blender uses python to script its objects. But I for now use Godot since they've included a whole C# support.