You are on page 1of 19

Programming languages

Content:

 Programming languages
 Classification of programming languages
 Programming
 Interpreter
 Compiler
 Usage
Programming languages
 A programming language is an artificial language
designed to communicate with the machine

 Communication is achieved using instructions

 Instructions are created using the symbols, digits or


letters
Programming languages
 Combinations of symbols, digits and letters form a
code

 Often code is written in lines

 A program is a list of instructions written in a


programming language that is used to control the
behavior of machine.
Programming languages
Programming language is usually split in two
components:

 Syntax - set of rules that define the combinations that


are considered to be correctly structured in that
language

 Semantics refers to meaning of languages, as


opposed to their form
Classification of programming
languages
 First generation refers to numeric code

 Numerical instructions directly corresponding to


individual hardware instructions

 The first generation instructions were entered


through the front panel switches of the computer
Classification of programming
languages

 The main advantage of the machine code – no


compiling or assembling

 Difficult to learn, difficult to find and edit errors, and


add new instructions
Classification of programming
languages
 Second generation of programming languages -
assembly languages

 They are higher than the first generation

 In order to be run on the computer, it has to be


translated into machine code
Classification of programming
languages

Assembly code
Classification of programming
languages
 Third generation of programming languages is higher
than assembly languages, closer to the user

 Instructions operate at higher level closer to human


way of thinking

 To run the code written in the third generation , the


code must be compiled into machine code or into
assembly code
Classification of programming
languages

Code written in C
Interpreter and compiler

 Interpreter is a computer program that executes


instructions written in a programming language

 Compiler is a computer program or set of programs


that transforms source code written in a
programming language into another computer
language
Programming
 Programming is a process of designing, writing,
testing, debugging and maintaining the source code
of computer programs

 Designing is a process of solving the problem and


finding a software solution

 Software testing
Programming

 Debugging is a process of finding and reducing the


number of errors (bugs) in a computer program or a
piece of hardware
Usage

 It is difficult to tell which programming languages are


most popular or used

 one language can occupy the greater number of


programming hours, another one can have more lines
of code, the third one can utilize the most CPU time
Usage
Methods of measuring language popularity:

 counting the number of job advertisements that


mention the language

 the number of books sold that teach that language

 numbers of code lines written in that language

 counting language references found using search


engine
Popularity of Programming Languages
 The PopularitY of Programming Language Index is created by
analyzing how often language tutorials are searched on Google.

 The more a language tutorial is searched, the more popular the


language is assumed to be. It is a leading indicator. The raw data
comes from Google Trends.

 If you believe in collective wisdom, the PYPL Popularity of


Programming Language index can help you decide which
language to study, or which one to use in a new software
project.
April 2021 compared to a year ago

Rank
Change Language Share Trend

1 Python 29.5 % -1.0 %

2 Java 17.51 % -0.6 %

3 JavaScript 8.19 % +0.2 %

4 C# 7.05 % -0.2 %

5 C/C++ 6.73 % +1.0 %

6 PHP 6.23 % +0.0 %

7 R 3.86 % +0.0 %

8 Objective-C 2.77 % +0.3 %

9 TypeScript 1.87 % -0.0 %

10 Swift 1.85 % -0.3 %

11 Kotlin 1.78 % +0.3 %

12 Matlab 1.77 % -0.1 %

You might also like