A programming language is an artificial language designed to express computations that can be carried out by machines such as computers. They can be used to create programs that control the physical and logical behavior of a device, to express algorithms with precision, or as a mode of human communication.

Is formed of a set of symbols and syntactic and semantic rules that define its structure and the meaning of its elements and expressions. The process by which you write, test, debug, compile and maintain the source code of a computer program is called programming.

Also, the word programming gets defined as the process of creating a computer program, through the application of logical procedures, through the following steps:

  • The logical development of the program to solve a particular problem.
  • Writing the logic of the program using a specific programming language (program coding).
  • Assembly or compilation of the program until it becomes a machine language.
  • Testing and debugging the program.
  • Development of documentation.

There is a common error that treats the terms ‘programming language’ and ‘computer language’ by synonyms. Computer languages encompass programming languages and others, such as HTML. (language for the marking of web pages that is not properly a programming language but a set of instructions that allow designing the content and text of the documents)

It allows you to specify precisely what data a computer should operate, how it should be stored or transmitted, and what actions to take under a variety of circumstances. All this, through a language that tries to be relatively close to human or natural language, as is the case with the Lexicon language. A relevant characteristic of programming languages is precisely that more than one programmer can use a common set of instructions that are understood among them to carry out the construction of the program collaboratively.

The implementation of a language is what provides a way to run a program for a certain combination of software and hardware. There are basically two ways to implement a language: Compilation and interpretation. Compilation is the translation into a code that the machine can use. The translators that can perform this operation are called compilers. These, like advanced assembly programs, can generate many lines of machine code for each proposal of the source program.

Imperative and functional languages

The programming languages ​​are generally divided into two main groups based on the processing of their commands:

  • Imperative languages
  • Functional languages.

Imperative programming language

Through a series of commands, grouped into blocks and composed of conditional orders, it allows the program to return to a block of commands All this if the conditions get met. These were the first programming languages ​​in use, and even today many modern languages ​​use this principle.

However, structured imperative languages ​​lack flexibility due to the sequentiality of instructions.

Functional programming language

A functional programming language (often called procedural language) is a language that creates programs employing functions, returns a new result state and receives as input the result of other purposes. When a task invokes itself, we talk about recursion.

The programming languages ​​can, in general, get divided into two categories:

  • Interpreted languages
  • Compiled languages

Interpreted language

A programming language is, by definition, different from the machine language. Therefore, it must get translated so that the processor can understand it. A program written in an interpreted language requires an auxiliary program (the interpreter), which converts the commands of the programs as necessary.

Compiled language

A program written in a “compiled” language gets translated through an attached program called a compiler that, in turn, creates a new independent file that does not need any other program to run itself. This file is called executable.

Also, it has the advantage of not needing an attached program to be executed once it has compiled. Also, since only one translation is necessary, the execution becomes faster.

The interpreted language, being directly a readable language, makes that any person can know the manufacturing secrets of a program and, in this way, copy its code or even modify it.

Implementation

The implementation of a language is what provides a way to run a program for a certain combination of software and hardware. There are basically two ways to implement a language: Compilation and interpretation. Compilation is the translation into a code that the machine can use. The translators that can perform this operation are called compilers. These, like advanced assembly programs, can generate many lines of machine code for each proposal of the source program.

Technique

To write programs that provide the best results, a series of details must be taken into account.

  • Correction.  Programs are correct if they do what they should do as they got established in the phases before their development.
  • Clarity. It is essential that the program be as clear and legible as possible, to facilitate its development and subsequent maintenance. When developing a program, you should try to make its structure coherent and straightforward, as well as take care of the style in the edition; In this way, the work of the programmer is facilitated, both in the creation phase and in the subsequent steps of error correction, extensions, modifications, etc. Stages that can be carried out even by another programmer, with which clarity is even more necessary so that other programmers can continue the work efficiently.
  • Efficiency. The point is that the program does so by managing the resources it uses in the best possible way. Usually, when talking about the efficiency of a program, it is generally referred to the time it takes to perform the task for which it got created. And the amount of memory it needs, but other resources can also get considered when obtaining the efficiency of a program. It all depends on its nature (disk space it uses, network traffic it generates, etc.).
  • Portability. A program is portable when it can run on a platform, be it hardware or software, different from the one on which it got developed. Portability is a very desirable feature for a program, since it allows, for example, a program that has been designed for GNU / Linux systems to also run on the family of Windows operating systems. It will enable the program to reach more users more efficiently.
Author

Maria is communication and tech-savvy with an artistic and creative mind. Colors and devices are what moves her. She has worked on communications and marketing for the last 15 years. When she isn’t glued to a computer or device, she dedicates her time to philanthropy work for different organizations, learning different languages, drawing or painting and spending time with her dogs.

Comments are closed.