After I have review several computer languages I have come to appreciate the complexity and the effort to put together many concepts into work. In this article I will compare features of computer programming languages.

Five Programming Languages

Significant features

  • Syntax style;
  • Programming paradigm;
  • Execution;
  • Type system;
  • Parameters;
  • Dispatch;
  • Pointers;
  • Runtime checking;
  • Character set;

Next we mention 10 most significant computer languages we have considered to analyze in order. We have started with the most new languages down to older languages. We have mentioned to most significant features of the language: power/performance and usability.

1. Julia

http://julialang.org/

This is a language you probably do not know about. It is a dynamic fast and potent computer language. This is the reason It is in 1st place in my top 12 computer languages.  It is not a curly language but more like Python. For it’s simplicity and power we recommend this language for beginners. The most significant feature of this language is it’s ability to support Unicode operators.

2. Rust

https://www.rust-lang.org/

Rust is inspired from C but is much more then C. This language has a very established goal to make a fast language without C problems. Rust is a system programming language that runs blazing fast, prevents segfaults, and guarantees thread safety.While other languages make a promise and fail, Rust has managed to implement a trade safe language.

3. Go

https://golang.org/

Initially Go programming language was created as a system language. However after the language has become mature it was used as server side service oriented language. This language has very nice features for parallel programming and concurrency. It has a small footprint and is an excellent language for high performance services.

It is a curly language and uses a garbage collector to eliminate unused references. This do not makes the language slow but game developers opted out and can’t use this language. So it failed to deliver the promised initial goal. However Go is a strong, graduated language, very robust and stable. It is a direct competitor for Java language and Python language.

4. Swift

https://swift.org/
Swift is created by Apple to replace Objective-C. It is more difficult then C++ and Java combined. It is the default native language for Apple devices.  Swift is winning due to Apple determination to make best mobile devices. This is a multi-paradigm computer language. The best feature of Swift is it’s native performance for Apple platform.

5. JavaScript

http://www.w3schools.com/js/
JavaScript is the programming language of HTML and the Web. This language is very fast for a dynamic language. It is a small little devil that can run in a browser and is a Java killer. It is easy to learn and is the most interesting curly language. The popularity of JavaScript has grown due to a simple fact. It can run in a browser. So you can create a dynamic website that is responding to user interaction like a program. JavaScript is multi-paradigm functional and object oriented.

6. Python

https://www.python.org/

Python language is a scripting language. It has grown in popularity due to it’s usage in Google as primary language. In my opinion will be used for many years to come. Python is a glue language for C, C++ and FORTRAN programs. To have performance many developers are creating Python extensions using different languages and glue them together using Python.

Why is not the first language in the top?

  • Python is relative slow because is an interpreted language;
  • It has GIL (Global Interpreter Lock) that prevent concurrency;
  • Do not have end of block (the code block is identified by indent only);
  • I do not like “def” and “__init__(self)” this makes code difficult to read.
  • I do not like you have to use “nonlocal” keyword;
  • You can use any kind of expressions not only logical for conditions;
  • Variables can change type and meaning on the fly;
  • Everything can become None, including a Boolean variable!

7.  C#

https://www.microsoft.com/net

I was not able to find C# official homepage. Instead here is the programming guide. What language do not have a home page? Also good resource for language syntax on Wikipedia. The C# language is intended to be a simple, modern, general-purpose, object-oriented programming language. However in my view C# IS NOT SIMPLE and is not multi-platform programming language.

8. Java

Java is a general-purpose computer programming language that is object-oriented, concurrent computer language. It runs programs into a Java virtual machine called JVM.  That makes Java slow relative to C++ and FORTRAN.  Java will CONTINUE to be a top language due to it’s institutionalization.

It is not my favorite language because …

  • The syntax is hard to read;
  • It is not a native language;
  • It uses curly brackets to separate blocks of code;
  • It is pure Object Oriented language;
  • It is difficult to write parallel, concurrent and asynchronous programs;

9. Ada

http://www.adacore.com/

Ada is a structured, statically typed, imperative, wide-spectrum, and object-oriented high-level computer programming language, extended from Pascal and other languages. Ada is a mature, feature reach computer language. The only problem is difficult to learn and use. However Ada is a mature and establish programming language that is going to be used for many years by organizations that require a sturdy computer language.

Notable features of Ada include:

10. C/C++

These two languages can be learn together. You start with C then you learn C++. The C language is an Imperative language, very simple to learn but very difficult to use. The C language is the first curly language. It uses {… } parenthesis to mark start and end of a block of code. C++ is Object Oriented C. It is a multi-paradigm language. Now you can write classes and functions so it is a kind of hybrid language. C++ is more safe then C but it can include same fragile programming style.

Beginner C and C++ programmers can create very unstable programs without realizing. This is due to numerous syntax ambiguities and traps that C developers must to understand and avoid. Latest revision:  ISO/IEC 14882:2014 / 15 December 2014. Include many innovations and influence from other languages: Ada 95, C# D, Java, Rust and Python.