Is Python the Future of Programming?

In summary: If you want to create something that will last more than a few years you are better off using a high level programming language like Python or Ruby.In summary, the two professors think that Python is less powerful than C++ and that in the future, Python will slowly overtake C++.
  • #1
ktb
45
0
Is Python the future??

I know currently in the sciences and physics especially, C++ is the language of choice. It is like this in my department, and looks to be that way everywhere else. However, in the computer science department, they don't even offer programming classes taught in C anymore, just python and scheme. So far, I have learned C++ while doing research, and python from a class. I know how powerful and universal C++ is, but python is so much more enjoyable to program in, because it is so much easier to read.

Every undergrad physicist I've talked to about this agrees with me that python is much more fun than C++. Do you think that someday python will slowly overtake C++, and will be a good idea to stay familiar with python (even if I don't have to use it everyday)? Sort of like what happened with C++ overtaking fortran once a new generation moved in.
 
Technology news on Phys.org
  • #2


Though I'm not a professional on the topic, I have postulated a similar question to my professors.

They responded that python does not allow for the same amount of management of system resources, and python is an interpreted language and not compiled directly to machine code which has performance implications.

Maybe a more educated user on both languages can further this point for you.

Senjai

EDIT: This doesn't belittle the importance of python, however, I know it is preferential to c++ for smaller projects and is used for scripting along with LUA for existing applications developed in C++.
 
  • #3


Python is a nice scripting language. Far, far nicer than shell scripting, nicer than perl for the most part. But if there's any extensive string processing involving regular expressions I'll choose perl, hands down. My perl code is portable. The corresponding python code isn't. Who knows what version of python some other installation is using?

The python community did some damage to itself with their constant mods to the language and with python 3 in particular. One installation I use still has python 2.4, another has 2.6, yet another, 2.7. One installation got their users very POed by switching to python 3. They switched back.

The intransigent views of van Rossum and the rest of the pythonistas (NO BRACES!, forced indentation (beware tabs in a script handed to you, woe to the blind person who wants to use python, self-executing code has to be properly indented in the current indentation context), there's only one way to do it, ...) gets in my way of adopting the language with open arms. I really like some parts of the language, like some parts, but there are some aspects of the language that I just do not like at all. At least the descriptive phrase isn't "loathe" any more. Except for lack of declarations. That one still falls into the "loathe" category.
 
  • #4


Many of the neat things about python that make it convenient, I can do in matlab, which has much better support for developing GUIs imo. It's hard to mix tkinter and matplotlib to do the things that MATLAB makes easy; wxPython and matplotlib seem to have the same problem. (note, MATLAB now fully supports object oriented programming, including class definitions and inheritance)

That being said, python will always been an appealing concept that makes coding intuitive and quick, and is ultimately more of a programming language than matlab.

I think I will learn C/C++ before I learn python. Python's more of a long-term project.
 
  • #5


Pythagorean said:
That being said, python will always been an appealing concept that makes coding intuitive and quick, and is ultimately more of a programming language than matlab.
One other benefit: Python is free. Matlab costs, and a whole lot. A python module that does just what you want: It's free, too. The MATLAB toolbox that does just what you want might cost more than MATLAB itself.
 
  • #6


Yes. It's increasingly frustrating how many cool things MATLAB can do... if only you'll buy the appropriate toolbox not included with your license. I'm still miffed that the symbolic toolbox isn't part of the standard library.
 
  • #7


I for one think that in a hundred years we'll be able to program in english. Computers are getting smarter, and it seems reasonable to think that in the future we won't need programming languages. We'll be able to give a computer an instruction in english or some other natural human language and it'll be able to carry it out.
 
  • #8


Computers aren't smart at all; people are being more clever about how they design computers. There's a whole world of information in 'context' that computers have no hint of ever being able to pick up on. That's the root of the language problem.
 
  • #9


Reptillian said:
I for one think that in a hundred years we'll be able to program in english.

Actually we have been going the opposite way for the last 50 years or so.

The inventor(s) of COBOL thought the way to make programs easy to understand was to write out in full "MULTIPLY A BY B GIVING C" rather than cryptic stuff like "C = A*B".

Thankfully, almost almost everybody since has disagreed with that bright idea!
 
  • #10


In terms of applications, there will always be specialized platforms used in the design and execution of specialized programs and runtime environments.

Because of this, there will always be a wide variety of platforms that each have their advantages and disadvantages.
 
  • #11


I agree with all of what people say above. And you can only compare the two languages in some particular aspects.
I think CS schools prefer C++ because it is not only more useful in physics and sciences in general but it is a representative for currently most used languages together with its widely known concepts/paradigm such as OOP and meta-programming. In the past people should have looked into SmallTalk, Pascal, LISP, C etc. What programs did you make that become enjoyable in Python ?
Code readability depends on your knowledge of the code constructs describing the program workflow under consideration and also depends upon your like of the language of choice. Python offers more user-friendly interactive capabilities. Personally, I also enjoy myself pretty much with web libraries such as Django and Twisted since they offer me chances to write my own webserver to run my web application in within. I won't find it strange at all if one day some certain languages take over C++ or Python. It simply to me is just a normal progressive transition as what it is happening now to previous SmallTalk, Pascal and C. Yet, software development methodology such as OOA, OOD, OOP, AOP, SOA, Agile Driven Development etc will always remain.
 

1. Is Python a popular programming language?

Yes, Python is currently one of the most widely used programming languages in the world. It has consistently ranked high in popularity surveys and is used by companies like Google, Facebook, and Instagram.

2. Why is Python considered the future of programming?

Python's popularity is due to its versatility, simplicity, and large community support. It is used for a wide range of applications, from web development and data analysis to artificial intelligence and machine learning. Its straightforward syntax makes it easy to learn, and its extensive library of modules allows for efficient and rapid development.

3. Is Python suitable for beginners?

Yes, Python is an excellent language for beginners. Its readable syntax and high-level nature make it easy to understand and learn. It also has a large community of developers who are always willing to help and provide resources for beginners.

4. Will other programming languages become obsolete because of Python?

No, while Python is gaining popularity, it does not mean that other programming languages will become obsolete. Each language has its strengths and weaknesses, and different languages are better suited for different tasks. It is always beneficial to have knowledge and experience in multiple languages.

5. Is Python used in the industry?

Yes, Python is widely used in various industries, including web development, data science, finance, and even gaming. Many companies are adopting Python for its speed, flexibility, and ease of use, making it a valuable skill for job seekers in the tech industry.

Similar threads

  • Programming and Computer Science
Replies
3
Views
1K
  • Programming and Computer Science
Replies
1
Views
728
Replies
6
Views
1K
  • Programming and Computer Science
Replies
16
Views
1K
  • Programming and Computer Science
Replies
8
Views
877
  • Programming and Computer Science
12
Replies
397
Views
13K
  • Programming and Computer Science
Replies
3
Views
1K
  • Programming and Computer Science
Replies
14
Views
4K
  • Programming and Computer Science
Replies
9
Views
1K
  • Programming and Computer Science
Replies
11
Views
1K
Back
Top