Programming Languages

From HPC Wiki
Jump to navigation Jump to search


Among the decades, very many programming languages has been evolved. We list some most widely used in the context of HPC here.

Low-Level programming languages

  • Machine code: That are 10001001011110 your computer can understand. You likely not.
  • Assembler: human-readable (to somehow extent; many says 'for special humans'), but still very low-level. Allows the programmer to get the very last possible performance crumbs from the hardware, but in turn is hardware-dependent and very tedious to program. Highly-tuned libraries often contain ASM parts, often making this software less-portable. You should not start at assembler level when programming an application.

High-level programming languages

... are readable by humans. The source code is a text file, to be modufie to an executable file by a compiler (we do not want to introduce the definition bush about compiled and interpreted languages here).


Portability

  • Fortran, the 1st wide-used high-level programming, used in HPC since 1954 and will likely be used for a lomg time, as there are still many Fortran projects around. Fortran handles multi-dimensional arrays comfortably. Due to some restrictions i the language
  • C and C++
  • JAVA

Script / interpreted languages

  • Shell
  • Python
  • Perl

Other

  • MATLAB

References