wiki/articles/programming_language.md
2025-02-08 18:36:18 -03:00

1.7 KiB

Programming language

A programming language is a computer language in which programs can be written, they can either be compiled into native machine code or interpreted. Different programming languages offers distinct amount of abstraction over the machine (low-level and high-level), being the so called "scripting languages" the ones with the higher level of abstraction, for example.

In some ways, assembly can be considered a (low-level) programming language, since it abstracts the numerical opcodes of the machine with mnemonics (such as mov, call, mul, etc.) and most offer macro capabilities.

List of acceptable and non-acceptable (harmful) languages

  • Assembly: yes, but non portable.
  • C: yes, the first and natural choice for writing programs. The Unix language.
  • Lua: yes, good for embedding and quick scripts.
  • Lisp: yes, flexible and relatively fast, prefer Scheme over the more bloated Common Lisp (still better than C++ however).
  • Forth: yes, niche, but it is a nice exercise on minimalism.
  • Pascal (no OOP): yes, old school and quite verbose, but small and fast compared to, say C++ or Rust; comparable to C in terms of features.
  • (POSIX) Shell Script: yes, has its quirks.
  • Perl: acceptable, could be used as a replacement for more complex shell scripts, since it is commonly installed in most modern unixes.
  • Go: acceptable but beware of the big executable sizes.
  • PHP (no OOP): acceptable, if you need interactive web pages but stay away from frameworks.
  • Python: Slow and bloated, avoid
  • C++: No.
  • JavaScript: No.
  • Rust: NO