I have organized programming languages in 6 categories each containing 5 to 7 languages. In the next video I read and explain the list. If you already watch this video you can skip.

Note: Programming Languages are synonym with Computer Languages. We use them to create programs for computers but also for other devices that are not computers so the most correct term is Programming Languages.

Best Programming Languages

A: First class native compiled languages

These are very good languages for creation of native applications. These languages have a compiler for one or more operating systems. These languages have in general static types except Julia that have dynamic types that are converted to static types just in time.

  1. Rust – Mozilla native language;
  2. D – disruptive native language;
  3. Julia – dynamic language from MIT;
  4. Go – default for Google cloud;
  5. Swift – specific to Apple OS;
  6. Nim – new high performance language;
  7. Wee – new language created by SageCode

B: Traditional system compiled languages

  1. Assembly – second generation language;
  2. C/C++  This is the king of computer languages;
  3. FORTRAN – fast language created by IBM
  4. Ada – very robust language designed for US army
  5. Pascal/Delphi  – my first computer language;

C: Virtual machine or interpreted

  1. JavaScript – default language for web;
  2. Python – the most easy to learn language;
  3. Java – open source language created by SUN and maintained by Oracle;
  4. C# – default language for Microsoft Visual Studio;
  5. Erlang – a parallel computing language easy to learn and very fast.

D: Java Virual Machine (JVM)

  1. Scala – this is also a functional language;
  2. JRuby – a dynamic language derived from Ruby;
  3. Groovy – a dynamic language for website back-end;
  4. Jyton – a Python dialect that can run in JVM;
  5. Kotlin – a new computer language ver nice created by Jetbrains company;

E: Dynamic Languages

  1. Python – a very popular dynamic language;
  2. Julia – is a new dynamic language similar to Python but faster;
  3. Lisp – a functional language that is very dynamic;
  4. Ruby – a language created for dynamic website back-end;
  5. Perl – a scripting language created for comand line and back-end programming;

F: Functional languages 

  1. Scala – this is mentioned second time here so it is a functional language for JVM;
  2. Haskell – this is the most pure functional language similar to OCaml;
  3. OCaml – one of the first functional languages;
  4. Closure – this is a functional language similar to Lisp that run in JVM;
  5. F# – this is a functional language for Microsoft Visual Studio;

Note: We can’t cover all these languages in our courses. Some of the languages we have left out and you may consider to learn them but we do not recommand. These languages are not good or not popular and you can do more with better languages. Sometimes I use PHP for this website but not much. I have used VBScript and Visual Basic but I’m not familiar with the rest.

Some other languages we have left out:

Visual Basic, PHP, VBScript, DBase, Cobol, Algol, Modula-2, Forth, PL-1, Lua.