DEV Community

Discussion on: Why is artificial intelligence driven by Python and not C++?

intrinsicworlds profile image

While I essentially agree with your position, the main point is somewhat of a false dichotomy.

Under C++ or C, you have the machine languages that they compile down to as well, that argument would be the same as why isn't everyone still programming in Assembly?

The answer is as you almost clearly stated, ease of access. Assembly is not at all easy to write or think about in high cognitive ways easily.

Thus came languages to make that easier.

Then came more, and more and more. Each abstracting more of the banalities of the previous ladder step away.

Pythons main success is three fold;

  1. It is extremely easy to learn, it has a very low barrier to entry. This allows people who are more and more forced towards programming, such as researchers, to pick up scripting or simple notebook style programs easily.

This allows for quick to market, quick to prototype, instant exploration of idea to code to output. It is extremely powerful to think, write a few lines of something, and begin to see what that looks like.

  1. It has very deep wells of power. While many in the traditional language world may have, or still, considered python "just a scripting" language it is far from the truth. It is an extremely deep and powerfully full bodied language. You can go from simple scripts and running a simple data set in a few minutes to enterprise level software applications. It spans technologies, use cases and industries with ease and has extreme reach into numerous technological arenas.

  2. It is tightly coupled, though this is true of CPython, which is the normal implementation people are aware only one of many implementations, with C and C++. This allows interop with tons of existing, and new libraries to glue, or, place performance code into lower level code where needed allowing python to straddle both fast to market and performance operation.

This is extremely difficult for almost any other language in the way that python has done it. The success and eponymous nature of it for data sciences is only because it is an every tool that is easy to start, and powerful enough to carry you through enterprise level work.