|
Both are equally bad.
And these two are among my three top ranking reasons for trying to avoid Python. I don't know how to order them, with the third one: The way Python has created its own closed world, essentially not relating to anything non-Python.
You can't just write a library function in Python to be called from another language. You can't just write a library function in another language and just link it with the Python code. ... Well, yes, you sort of can, when a number of preconditions are met, and using a few tricks. But you are not really supposed to.
Python installation and updating goes by its own mechanisms. Of course Python has its own documentation standards and tools. And 70% (or thereabouts) of all Python programs must indicate in the implementation language in the program name. (Even Visual Basic programmers don't feel a need to give their programs names starting with "vb"!)
For decennies, OSes defined a relocatable format used by "all" languages. The format defind a standard stack layout and calling convention for all languages. In those days, types were mostly hardware defined, but it wasn't uncommon to see standards for the layout of structs as well. The result was that you to a large degree could write each module of your system in the language best suited for the task, and link it all together.
Today, ARM is promoting a single Application Binary Interface to make mixed-language programming feasible. dotNET is the same way. The just-in-time code generating and linking makes it somewhat different, but the end result is essentially the same. You do program in a selection of languges! E.g. you could set up the data structure for a screen layout as compile-time initialized data in a procedural language, but XAML is somewhat better suited for the task. XAML is a language for creating a compile-time initialized data structure, and leaves the playground for procedural code to take over these structures and use them further.
Python just doesn't fit it here. It doesn't want to. Sometimes, you get a feeling that Python hopes to grow so much that it can squeeze out all other alternatives and rule the world; then it has no reason to worry about ABI and CLI and whatever they are called, all the non-Python standards. Python defines its own standards, ignoring everyone else.
ARM ABI and dotNet leaves me with a much better gut feeling. They encourage me to use the language that is best suited for the task. Python does not. It more or less demands that I use Python, whether suitable or not. It takes away my freedom. That is probably on top of the list. The two other points come in second and third.
|
|
|
|
|
Quote: And 70% (or thereabouts) of all Python programs must indicate in the implementation language in the program name. (Even Visual Basic programmers don't feel a need to give their programs names starting with "vb"!)
That's just petty.
Quote: ARM ABI and dotNet leaves me with a much better gut feeling. They encourage me to use the language that is best suited for the task. Python does not. It more or less demands that I use Python, whether suitable or not. It takes away my freedom. That is probably on top of the list. The two other points come in second and third.
Using an ABI would make sense if Python was a low-level system language. It's not, and was probably never intended to be one; the language itself is written in C (See CPython). It's meant to be an abstraction-layer language, and if C can use an ABI, it wouldn't take very much work to abstract it in Python.
I like Python because it's a simple language that allows me to write up a proof of concept with very little impedance between the idea and the application in itself. If I need OOP, I can use it, but I'm not required to. Type checking is an option, and what's more free than being allowed to choose?
Have I made embarrassing messes with Python? More than I'd like to admit, but every time I did, I learned that I wasn't thinking in Python, but thinking in X-Language, and translating it into Python. Since I don't work in Python on a daily basis, thinking in Python (TIP) doesn't come as easily for me as it would otherwise. Nonetheless, when I'm in a TIP-state of mind, the code I produce is leagues ahead of what I produced with the thinking-in-X-then-translation method.
|
|
|
|
|
|
Good, but don't get lost in it, keep track of time
|
|
|
|
|
|
|
I think your message was meant for Brady, not me.
|
|
|
|
|
Yes, pressed the Reply button at the wrong location.
|
|
|
|
|
I have seen and gone through the Python 3.7 tutorial, but I did so very fast and long ago. I plan on doing the "official" tutorial once I finish some of the Python courses. Then I will have a good understanding of the libraries and can use the tutorial topics to write real, practical Python.
"'Do what thou wilt...' is to bid Stars to shine, Vines to bear grapes, Water to seek its level; man is the only being in Nature that has striven to set himself at odds with himself."
—Aleister Crowley
|
|
|
|
|
It's quite good language in many ways; once you get past the "indentation" problem. I have used the Python IDE and Visual Studio Code, and both editors handle automatic indentation without problems.
|
|
|
|
|
Nice thanks
I'm not sure how many it cookies it makes to be happy, but so far it's not 27.
JaxCoder.com
|
|
|
|
|
Brady,
QQ: Where did you purchase the Python courses? Just curious...I'm self-teaching at the moment, but am on the lookout for something a bit more formalized.
Cheers!
|
|
|
|
|
|
It was on special with online store Popular Science Shop, this course bundle[^].
"'Do what thou wilt...' is to bid Stars to shine, Vines to bear grapes, Water to seek its level; man is the only being in Nature that has striven to set himself at odds with himself."
—Aleister Crowley
|
|
|
|
|
Many thanks Brad. Cheers.
|
|
|
|
|
Lovely language for masses, still using = for assign a value, and == for checking equality, as it is taught in elementary school.
Had one live project, IoT on Linux, of course same Python, same libraries behaved differently (on level of not working) on different distros (RPi)
Recommended for people still have resources and time for reinvent the wheel.
|
|
|
|
|
Hi Brad, Sounds like you really like the courses you got - what was the name and source of those courses. My friend is looking to learn Python and would appreciate a pointer to where you got the courses. - Thanks, Bob.
|
|
|
|
|
I bought a bundle of 12 courses from the online Popular Science Shop. The bundle isn't just pure Python, it's geared toward machine learning and data science, but I'm finding all the apps I build on a course to be great for learning Python.
"'Do what thou wilt...' is to bid Stars to shine, Vines to bear grapes, Water to seek its level; man is the only being in Nature that has striven to set himself at odds with himself."
—Aleister Crowley
|
|
|
|
|
|
last few weekends done some messing with python on raspberry pi
the whole programming in terminal, even just short bits, is a whole different thing.
as for python
clear line error and message is great
the white spacing I still dont understand how it is easier for new comers?
"inconsistent use of tabs and spaces in indentation"
Then you got messing with getting modules before you can run
module for everything. But if you keep in mind with C#, most everything written is with .net framework which is a module, and compiling just hides some of that import and referencing header.
|
|
|
|
|
Eid Mubarak to everyone!
Please stay safe, stay at home, and remember everyone in your prayers, especially those who are going through the hardships of this difficult time.
Here is a recipe guide to make sewaiyyan at home: http://dailywhatz.com/health/recipes/how-to-make-delicious-sewayyian/
The sh*t I complain about
It's like there ain't a cloud in the sky and it's raining out - Eminem
~! Firewall !~
|
|
|
|
|
Afzaal Ahmad Zeeshan wrote: Eid Mubarak to everyone! [Rose] Ditto
Afzaal Ahmad Zeeshan wrote: Here is a recipe Tx
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
"If you just follow the bacon Eddy, wherever it leads you, then you won't have to think about politics." -- Some Bell.
|
|
|
|
|
Happy Eid, everyone!
/ravi
|
|
|
|
|
I've never seen a parser's output end up so confusing. The Roslyn API had an entire team behind it. Well my team consists of me, myself and I. Despite that, Slang (which parses C# similar to roslyn), while somewhat more limited than Roslyn in functionality, produces a much easier to use result than Roslyn.
What gives? I don't have a team to hash out the surface area of the API. They do. And from where I sit, they did a poor job of it. It's way too complicated for what it is.
Real programmers use butterflies
|
|
|
|
|
And all three of you agree that Roslyn API is nasty?
It does not solve my Problem, but it answers my question
modified 19-Jan-21 21:04pm.
|
|
|
|