Key Features

  • statically typed (performs type checking at compile time, opposed to dynamically-typed languages which perform type checking at runtime e.g. python, js, ruby etc)

  • compiled language (converted directly into machine code that the processor can execute -need a “build” step to be manually compiled first. You'll need to “rebuild” the program every time you need to make a change - can be faster and more efficient than interpreted languages where the source code is not directly translated by the target machine. Instead, a different program, aka the interpreter, reads and executes the code. Interpreted languages were once significantly slower than compiled languages. But, with the development of just-in-time compilation, that gap is shrinking.)

  • with a built-in concurrency a system

  • with a garbage collector

Last updated