Index:
UPDATED ✅ A programming language is one used to create algorithms and rules that control a computer ⭐ ENTER HERE ⭐ and Learn more about the subject
Computer programming is undoubtedly one of the sectors that have caused the greatest impact on the lifestyle of the modern world. Today we all use at least one program or mobile application a day; Whatsapp, Facebook, Windows, Google Chrome, they are all software for desktop or mobile that have seen the light thanks to this complex science.
As far as programming is concerned, without a doubt one of the most important elements are programming languages. There are many of them and each one has been developed thinking of promoting the development of a certain type of programbut every software or application is written with one of them.
In this article we are going to teach you everything you need to know about programming languages, those that have allowed the creation of the browser you are using right now to read this article and many other programs and applications more.
What is a programming language and what is it for in computing?
A programming language is a formal language that allows a programmer to write code to create computer programs. These programs contain a source code in which all the command lines and algorithms written in code are written.which subsequently goes through a compiler to translate it into machine-type language, the most basic and elementary of all that is understood by the computer.
Programming languages are unique, and as new advances are made and more powerful techniques for creating software are developed, new languages are also being developed that allow the creation of much more complex applications.
What are the most important elements of a programming language?
A programming language has very well defined characteristics and elements that directly influence its limitations and potential.
Here are the most important elements of any programming language:
variables
Variables are spaces in a program’s memory that store important data for its operation, such as complex processes or scripts. These are classified according to the type of data they can store, and in that sense we know the following:
Datatype | Description |
---|---|
Char | Variables that contain a single character, either a letter or a number |
int | They contain only an integer. |
float | They contain only a decimal number. |
String | They contain text strings of type Char or vectors with strings of these. |
boolean | Variables that can only contain a zero or a one. |
conditionals
They are text strings that, as their name indicates, condition certain program functions in their code so that they are executed only if various factors are met.
In this sense there are three of them; “If”, that imposes the conditions that must be met for the execution of the software; “else if”, indicates under what conditions the program can be executed if the “If”, so it is usually preceded by one; Y “else”, that imposes the conditions for the program or a part of it to be executed if the previous two are not met, so it is usually preceded by both or at least one of them.
Functions
Functions are variables that contain code of themselves inside them, so that they can be used to avoid having to always rewrite the same function or command throughout the program’s source code. The process of writing a program may require you to mention the same skill repeatedly.which was previously done.
These functional variables are created with the intention of simplifying the process, indicating with a shorter fragment that the program must execute a function that was previously preset in its code.
Syntax
The syntax of a programming language defines the possible combinations of its textual elements (numbers, letters and signs), to create a semantically perfect program that works without errors in your code. In most cases, languages are purely textual, but programs with graphical syntax can also be identified, since their nature is more visual than written.
Static semantics
If the syntax is the correct form of the expressions, the static semantics allow the programmer to identify expressions within a language and to know their meaning. This is used to define restrictions on text structures that cannot be expressed with a standard formal expression of the language as such.. This can be in two ways; dynamic or operational.
type system
Now we enter a rather complex area. A type system is how a language organizes certain values of its structure into “types”., also defining how they interact with each other and the way in which they can or cannot be manipulated. Thanks to them, it is possible to verify errors and programs poorly described in said language, discarding them, although sometimes it could also rule out correct programs.
It is for this last reason that many languages choose to eliminate said “types”, which has allowed them to be known as untyped languages. As for those that do use a type system, we can identify the following:
- Static: statically typed languages are those that determine the “type” of all expressions and their value before they are executed by the software in question. They can be “explicit” in two ways; when the programmer is the one who must manually write each type, or “inferred”; when the compiler is in charge of inferring and determining the values.
- Dynamic: On the other hand, there are dynamic type languages, which determine the validity of a type before its execution, being related to execution values instead of simple textual expressions. Like inferred statics, they should not be written by the programmer, but by the compiler or another language element.
- strong and weak: finally there are the strong and weak types. The first one prevents a “type” from being treated like any other, granting it specific rules, while the second one is totally the opposite of this one, and allows more freedoms in that sense.
Types of programming language How are they all classified?
Programming languages have different ways of being classified, and below we are going to present the most important classifications with some examples of the most popular languages of each one.
According to level
The first classification of programming languages is according to their level of abstraction, or what is the same, according to how specific and universal they are.
In this sense, the following types of programming languages are known:
- low level: these are languages developed for hardware and cannot be used outside of it. Its intention is to get the most out of it, with the limitation that it cannot work on any other. Some of the most important in this category are C++ or Fortran.
- High level: these are completely opposite to the previous ones and can be used in different equipment and hardware architectures. Its intention is to be more universal and to be able to be used with more freedom. Some of the most important in this category are Basic or Pascal.
- mid level: these are programs that are halfway between low and high level, so they can use various functions of high-level languages, with the potential to focus on a certain system architecture. One of the most popular is C Basic.
by paradigm
The process to develop a program or software life cycle has different paradigms that in turn have allowed the birth of new languages. For this reason, There is also a classification by paradigms in terms of computer programming languages.
In this sense we can identify the following:
- Imperative: Imperative programming is based on the creation of algorithms that contain mechanized instructions for carrying out a software process or function. To imagine these programs, think of a cooking recipe that tells you step by step the procedure to follow, and the ingredients to get the final dish.
- object oriented: object orientation is based on the imperative paradigm, with the difference that it encompasses each process in “objects”, which are related to each other and contain variables and values of different program functions. The most representative languages of this are C++, Java and Python.
- Dynamic: dynamic programming is one that seeks to streamline the process of writing a program as much as possible, so all the processes are fragmented into mini-processes in which work is done individually until the best possible result is achieved. For this, functional languages such as Haskell are used.
- Functional: functional programs are written according to functions that are activated according to the data input received from the user. That is, they are not fully activated, but only start what is necessary to fulfill said function. The most important languages of this are Haskell and Scheme.
- event oriented: these are programs in which their execution depends on the conditions given by the system and the user. This is one of the newest paradigms on the list, born in 2013, so so far it is also being studied more thoroughly. Some of the languages of this would be Lexico and Visual Basic, as well as the popular Javascript that has always had similar characteristics to this one.
- Declarative: Declarative programming consists of indicating and declaring to the system what the problem is, without giving logical orders for its solution. In these software, the programmer only indicates the event, and clearly expresses what he wants to obtain with his solution, but does not explain how it should be solved, and gives said task to the computer itself. Examples: Lisp and Prolog.
- logic programming: In this paradigm, logical relationships that interact with each other to start processes and program functions are described. Functional languages such as Prolog are also used for it.
- Multiparadigm: this is a philosophy that tries to combine multiple paradigms in the writing of the same software. As you have noticed, there are languages, such as functional ones, that can be used to program with other philosophies. Some of the most important in this sense are Python, Prolog or Lisp.
for generations
Finally, we have the classification by generations, which is nothing more than a way of locating certain languages in the time in which they were created. Throughout history there have been five generations of programming languages, and today you will know them all:
- First generation: born on the same day that machine-like language (binary code) is discovered, which is the only one understood by computers. At that time, this element was discovered, but also the fact that each system had its own architecture that only understood certain languages, which would be known as low-level languages, whose first expressions were Assembler x86 and MULT.
- Second generation: in this era symbolic or assembly languages are discovered and developed. These are nothing more than low-level languages that are much easier to translate into machine language, which is the only language that the computer understands and therefore is the only way to tell it what to do.
- Third generation: high-level languages are born, which does not mean that they are more powerful than low-level languages, but rather that they have the ability to operate on multiple systems regardless of their architecture. It is from here when a boom in programming begins, which allowed us to create much more versatile programs than the ones we had.
- Fourth generation: the fourth generation corresponds to a series of tools that allow the creation of programs and applications from parts of other programs. However, these are not considered in most cases a language. For this reason, object orientation is considered by many to be the real fourth generation since it was its irruption that really introduced significant changes in the way of programming.
-
Fifth generation: Many consider the languages used to create artificial intelligence such as Java or Python to be fifth generation. It was born in the 80’s with the Japanese project of the fifth generation whose purpose was to design a new class of computers powered by AI.
However, this project was a complete failure, so for current programmers, the so-called “fifth generation” does not yet exist, and they are left with only the previous four.
List of the most used programming languages today
Now you know what the main classifications of programming languages are, it’s time for you to get to know some of the best exponents up close.
Therefore, below Here are the five most used languages today:
JavaScript
Although for several years it has been encouraged to stop using javascript on websites, today it continues to be one of the most used languages for the development of computer programs and all kinds of websites. as well as video games and even for robotic programming. He is currently one of the greatest exponents of object-oriented programming and his expectations for the next decade are very good.
PHP
This is a program related to the development of mobile applications and web apps for browsers, being commonly combined with HTML, since it was one of the first that could do it working side by side with the server. It was created by Rasmus Lerdorf in 1995, being also one of the greatest exponents of free software development.
python
For many this is one of the most essential programs to learn programming. Its use for decades has been a common denominator in the sector, making it a very well structured and studied language. It is used both for the development of programs and for computer security and other tools.
HTML
One of the most popular languages in the world. It is something that you will have to learn if you are interested in programming websites or online applications. As far as internet portals are concerned, This is undoubtedly the most used language due to its execution facilities and connection speed between the client and the server..
C++
This is an object-oriented programming language that is one of the most widely used today to develop desktop applications, such as video games, browsers such as Google Chrome or operating systems, being one of the bases of Microsoft’s Windows.
what is the language most basic and easy to learn programming to get started?
Programming languages are not difficult to learn as such. It is a series of formal expressions that if you have a good memory it will be very easy for you to memorize regardless of their nature. What you really need advanced knowledge is programming as such, for which you will have to understand the behavior of the computer to develop commands and algorithms that can control it.
That is why the real difficulty of a programming language lies in the type of software that you want to develop. For example, with two or three months of dedication, it is more than likely that you will be able to write a simple website with basic functions in PHP, but if you intend to develop a mobile application, it will be much more difficult to do it, and it will take you longer. weather.
Our recommendation is that you start with languages that allow you to make simple applications or basic websites such as HTML, CSS or PHP to write your first strings of code. As for the learning time, it will depend on how much you want to specialize. On average, programming simple things shouldn’t take more than a few months of dedication, but if you really want to be a programming luminary, you’ll need years to give you enough experience.
Computing