Criteria for programming languages Criteria for programming languages

Programming language: criteria

How to analyze a programming language? What are the criteria to define the best for each situation? How can knowing the criteria of languages ​​change your life? This post discusses those questions.

1. Pet language

Besides being a pet, something common nowadays is to have a pet programming language. You don’t have to take it for a walk every day, but you end up using it for everything. Any programming demand that you have, gives you a way to use it, even if it is not appropriate.

I know a friend who needed to make very simple software. An informational app for iOS made up of 5 screens and with side slide navigation to the sides. There was no register, 3D objects, complex interactions, physics, mathematical calculations that needed to be implemented. He did it in C # using Unity 3D. A game engine, which has a built-in graphics engine, which in this case is not used. The application should have 2MB and it was 50MB, because in it there are the 5 small screens, 1 programming script and the standard Unity 3D graphics engine.

Knowing the criteria used in programming language projects allows a greater basis for choosing appropriate languages ​​for each situation, especially in programming homework.

2. Domino effect
Do you know when you learn a new language and discover that a word is similar to a third language, but not yours? That is, the more languages ​​I learn, the more I identify similarity and difference between them and this facilitates learning (and in some cases it should also confuse, something to be asked for polyglots).

In programming, something similar occurs. The more languages ​​and resources you learn, the more you identify similarity and difference between languages. When you understand a new feature of one language, you end up thinking and comparing how to do that in another. This increases the ability to learn new languages. It gets easier and easier and what I usually say happens: a programmer who is the same programmer in any language. He takes the specification, studies, researches and, in a short time, manages to implement his algorithm in that language without ever having had a greater contact with it.

Knowing the criteria of a language can also represent knowing it more deeply, increasing the ability to understand language resources and consequently the ability to express algorithms and solutions with it.

3. Readability
One of the most important criteria of programming languages ​​is readability, which is the ease with which programs can be read and understood. With the concept of a software life cycle, the initial coding was relegated to a smaller role, and maintenance was recognized as the main part of the cycle, mainly in terms of cost. Maintenance is largely determined by the readability of programs, which has become an important measure of the quality of programs and programming languages.

The syntax of a programming language has a major impact on readability. By syntax, understand all the elements of the language and its rules for combining them. The way of defining identifiers, as variables, influences readability. For example, in PHP, variables must start with the $ symbol. Everything that comes with this symbol is a variable. In C, you don’t need to use any initial symbols. Other syntax factors associated with readability are how and what special or reserved words are used and how it is related to semantics (meaning).

Let’s look at other factors that influence readability.

Many writing resources

There are several factors that affect readability. For example, the multiplicity of features can be a problem for readability. In Java and C ++, for example, it is possible to increment a variable in 4 different ways.

Few writing resources

The reverse, however, is also a problem. Imagine a language with few writing resources, like Assembly, for example. It accepts primitive commands, which must be executed one by one. Instead of using an expression with a single line like a = 10 + 20, you need to use multiple lines to perform this sum.


Languages ​​that allow operators and methods to overload can also compromise readability if they are not used intuitively. Imagine an overhead of the addition operator for the calculation of the vector product instead of the sum of two vectors. It will certainly confuse anyone who reads the code and is not aware of this definition.

There are still other factors, but what has been mentioned above is the basis of the programming language.

Leave a Reply

Your email address will not be published. Required fields are marked *